From 06b44a6c02433e402ec7ffec1dd8a98c6f7b11fa Mon Sep 17 00:00:00 2001 From: Travis Smith Date: Wed, 7 Apr 2021 13:24:19 -0600 Subject: [PATCH] otguide2.4 to master --- .../oteguide/056bf7cd-95a1b8aa376929e2a256.js | 2 - .../056bf7cd-95a1b8aa376929e2a256.js.map | 1 - .../oteguide/056bf7cd-aa3dcb82f3a8329ec297.js | 2 + .../056bf7cd-aa3dcb82f3a8329ec297.js.map | 1 + sites/oteguide/404.html | 2 +- sites/oteguide/404/index.html | 2 +- sites/oteguide/8-2c321e0104aa1146d919.js | 3 + ... => 8-2c321e0104aa1146d919.js.LICENSE.txt} | 2 +- sites/oteguide/8-2c321e0104aa1146d919.js.map | 1 + sites/oteguide/8-c7a1bac6e40fad7fe9b9.js | 3 - sites/oteguide/8-c7a1bac6e40fad7fe9b9.js.map | 1 - sites/oteguide/9-147855b00f17a522fcc2.js.map | 1 - ...7a522fcc2.js => 9-17375f5de1d5e638db36.js} | 6 +- ... => 9-17375f5de1d5e638db36.js.LICENSE.txt} | 0 sites/oteguide/9-17375f5de1d5e638db36.js.map | 1 + .../OT&E_Guide/1-1-introduction/index.html | 4 +- .../1-3-fielding-combat-capes/index.html | 6 +- .../1-5-acquisition-pathways/index.html | 6 +- .../OT&E_Guide/1-6-art-principles/index.html | 4 +- .../2-test-lifecycle-overview/index.html | 8 +- .../3-1-involvement-decision/index.html | 4 +- .../3-2-standing-activities/index.html | 4 +- .../OT&E_Guide/3-3-test-strategy/index.html | 4 +- .../OT&E_Guide/4-1-levels-of-test/index.html | 6 +- .../4-2-OT-test-activity-cycles/index.html | 25 +- .../OT&E_Guide/4-3-OT-construct/index.html | 6 +- .../4-4-building-the-ot-construct/index.html | 24 +- .../5-test-lifecycle-exit/index.html | 4 +- .../6-0-ot-business-practices/index.html | 4 +- .../OT&E_Guide/6-1-1-tasking/index.html | 4 +- .../OT&E_Guide/6-1-2-team-standup/index.html | 4 +- .../OT&E_Guide/6-1-3-team-training/index.html | 4 +- .../OT&E_Guide/6-2-risk-management/index.html | 4 +- .../OT&E_Guide/6-3-resources/index.html | 4 +- .../6-4-coordination-across-afotec/index.html | 6 +- .../index.html | 4 +- sites/oteguide/OT&E_Guide/6-6-acap/index.html | 16 +- .../OT&E_Guide/6-7-case-study/index.html | 4 +- sites/oteguide/OT&E_Guide/index.html | 2 +- sites/oteguide/acronyms/index.html | 161 +++ sites/oteguide/app-55220dc7c065ea1bf3d7.js | 3 - .../oteguide/app-55220dc7c065ea1bf3d7.js.map | 1 - sites/oteguide/app-eec04d2f552ddc7b4bf2.js | 3 + ...> app-eec04d2f552ddc7b4bf2.js.LICENSE.txt} | 0 .../oteguide/app-eec04d2f552ddc7b4bf2.js.map | 1 + sites/oteguide/chunk-map.json | 2 +- .../oteguide/commons-58ffe4445524790e8a26.js | 2 + .../commons-58ffe4445524790e8a26.js.map | 1 + .../oteguide/commons-86b49c52005df6b1cbb9.js | 2 - .../commons-86b49c52005df6b1cbb9.js.map | 1 - .../index.html | 1100 +++++++++++++++ .../fn_guides/accreditation_guide/index.html | 28 +- .../analyst_test_design_guide/index.html | 193 +-- .../editing_reports_guide/index.html | 10 +- .../evaluation_and_reporting_guide/index.html | 1054 ++++++++++++++ sites/oteguide/fn_guides/index.html | 21 +- .../lessons_learned_guide/index.html | 12 +- .../fn_guides/measures_guide/index.html | 1222 +++++++++++++++++ .../safety_risk_mgmt_guide/index.html | 4 +- .../index.html | 4 +- .../test_capability_guide/index.html | 35 + sites/oteguide/glossary/index.html | 6 +- sites/oteguide/index.html | 2 +- .../1-1-introduction/page-data.json | 2 +- .../1-3-fielding-combat-capes/page-data.json | 2 +- .../1-5-acquisition-pathways/page-data.json | 2 +- .../1-6-art-principles/page-data.json | 2 +- .../2-test-lifecycle-overview/page-data.json | 2 +- .../3-1-involvement-decision/page-data.json | 2 +- .../3-2-standing-activities/page-data.json | 2 +- .../3-3-test-strategy/page-data.json | 2 +- .../4-1-levels-of-test/page-data.json | 2 +- .../page-data.json | 2 +- .../4-3-OT-construct/page-data.json | 2 +- .../page-data.json | 2 +- .../5-test-lifecycle-exit/page-data.json | 2 +- .../6-0-ot-business-practices/page-data.json | 2 +- .../OT&E_Guide/6-1-1-tasking/page-data.json | 2 +- .../6-1-2-team-standup/page-data.json | 2 +- .../6-1-3-team-training/page-data.json | 2 +- .../6-2-risk-management/page-data.json | 2 +- .../OT&E_Guide/6-3-resources/page-data.json | 2 +- .../page-data.json | 2 +- .../page-data.json | 2 +- .../OT&E_Guide/6-6-acap/page-data.json | 2 +- .../OT&E_Guide/6-7-case-study/page-data.json | 2 +- .../page-data/OT&E_Guide/page-data.json | 2 +- .../page-data/acronyms/page-data.json | 1 + sites/oteguide/page-data/app-data.json | 2 +- .../page-data.json | 1 + .../accreditation_guide/page-data.json | 2 +- .../analyst_test_design_guide/page-data.json | 2 +- .../editing_reports_guide/page-data.json | 2 +- .../page-data.json | 1 + .../lessons_learned_guide/page-data.json | 2 +- .../fn_guides/measures_guide/page-data.json | 1 + .../page-data/fn_guides/page-data.json | 2 +- .../safety_risk_mgmt_guide/page-data.json | 2 +- .../page-data.json | 2 +- .../test_capability_guide/page-data.json | 1 + .../page-data/glossary/page-data.json | 2 +- sites/oteguide/page-data/index/page-data.json | 2 +- sites/oteguide/page-data/sq/d/1928916242.json | 2 +- sites/oteguide/page-data/sq/d/2619113677.json | 2 +- sites/oteguide/sitemap.xml | 31 +- .../508ef/image9.png | Bin 0 -> 3803 bytes .../6b9fd/image9.png | Bin 0 -> 6823 bytes .../a2ead/image9.png | Bin 0 -> 3386 bytes .../6b9fd/image48.png | Bin 29452 -> 30170 bytes .../a2ead/image48.png | Bin 10201 -> 9978 bytes .../6b9fd/image10.png | Bin 8020 -> 7867 bytes .../a2ead/image10.png | Bin 3671 -> 3632 bytes .../e3189/image10.png | Bin 18348 -> 21474 bytes .../6b9fd/image15.png | Bin 24144 -> 23130 bytes .../a2ead/image15.png | Bin 8853 -> 8641 bytes .../6b9fd/image21.png | Bin 25061 -> 26092 bytes .../a2ead/image21.png | Bin 9529 -> 9316 bytes .../e3189/image21.png | Bin 59243 -> 62028 bytes .../289dd/image11.png | Bin 0 -> 40333 bytes .../6b9fd/image11.png | Bin 0 -> 17178 bytes .../a2ead/image11.png | Bin 0 -> 5577 bytes .../e3189/image11.png | Bin 0 -> 42429 bytes .../6b9fd/image14.png | Bin 27266 -> 24878 bytes .../a2ead/image14.png | Bin 11556 -> 12187 bytes .../6b9fd/image16.png | Bin 11745 -> 11552 bytes .../a2ead/image16.png | Bin 5415 -> 5577 bytes .../e3189/image16.png | Bin 23288 -> 23896 bytes .../6b9fd/image52.png | Bin 5041 -> 5165 bytes .../a2ead/image52.png | Bin 2678 -> 2878 bytes .../e3189/image52.png | Bin 11957 -> 11829 bytes .../6b9fd/image2.png | Bin 5515 -> 5190 bytes .../a2ead/image2.png | Bin 2384 -> 2650 bytes .../6b9fd/image3.png | Bin 0 -> 8434 bytes .../6c2de/image3.png | Bin 0 -> 11885 bytes .../a2ead/image3.png | Bin 0 -> 3266 bytes .../e3189/image3.png | Bin 0 -> 17353 bytes .../6b9fd/image18.png | Bin 31269 -> 31102 bytes .../a2ead/image18.png | Bin 10694 -> 10878 bytes .../6b9fd/image29.png | Bin 3297 -> 3500 bytes .../a2ead/image29.png | Bin 1576 -> 1774 bytes .../6b9fd/image3.png | Bin 22222 -> 23210 bytes .../a2ead/image3.png | Bin 9671 -> 9326 bytes .../e3189/image3.png | Bin 53290 -> 54809 bytes .../6b9fd/image11.png | Bin 0 -> 16652 bytes .../a2ead/image11.png | Bin 0 -> 7359 bytes .../efc66/image11.png | Bin 0 -> 18808 bytes .../6b9fd/image2.png | Bin 0 -> 30006 bytes .../a2ead/image2.png | Bin 0 -> 12532 bytes .../bd9eb/image2.png | Bin 0 -> 51927 bytes .../e3189/image2.png | Bin 0 -> 74671 bytes .../6b9fd/image5.png | Bin 24117 -> 24154 bytes .../a2ead/image5.png | Bin 7851 -> 8275 bytes .../6b9fd/image5.png | Bin 0 -> 20377 bytes .../a2ead/image5.png | Bin 0 -> 9189 bytes .../b79a5/image5.png | Bin 0 -> 39144 bytes .../e3189/image5.png | Bin 0 -> 57942 bytes .../6b9fd/image12.png | Bin 0 -> 9280 bytes .../a2ead/image12.png | Bin 0 -> 4630 bytes .../c56af/image12.png | Bin 0 -> 15564 bytes .../e3189/image12.png | Bin 0 -> 20381 bytes .../6b9fd/image16.png | Bin 23954 -> 24089 bytes .../a2ead/image16.png | Bin 8649 -> 8041 bytes .../6b9fd/image23.png | Bin 37271 -> 33909 bytes .../a2ead/image23.png | Bin 10926 -> 11233 bytes .../a2ead/image3.png | Bin 13373 -> 13512 bytes .../6b9fd/image13.png | Bin 15269 -> 15130 bytes .../a2ead/image13.png | Bin 5312 -> 5145 bytes .../e3189/image13.png | Bin 35483 -> 35555 bytes .../6b9fd/image13.png | Bin 32032 -> 32624 bytes .../a2ead/image13.png | Bin 12477 -> 11796 bytes .../6b9fd/image4.png | Bin 29676 -> 30575 bytes .../a2ead/image4.png | Bin 12936 -> 11705 bytes .../e3189/image4.png | Bin 63535 -> 59982 bytes .../6b9fd/image4.png | Bin 0 -> 27883 bytes .../73a2e/image4.png | Bin 0 -> 42483 bytes .../a2ead/image4.png | Bin 0 -> 10463 bytes .../e3189/image4.png | Bin 0 -> 66600 bytes .../6b9fd/image8.png | Bin 5040 -> 4876 bytes .../a2ead/image8.png | Bin 2221 -> 2157 bytes .../e3189/image8.png | Bin 11658 -> 13228 bytes .../5819f/image7.png | Bin 0 -> 36170 bytes .../6b9fd/image7.png | Bin 0 -> 23019 bytes .../a2ead/image7.png | Bin 0 -> 7530 bytes .../e3189/image7.png | Bin 0 -> 66767 bytes .../45662/image10.png | Bin 0 -> 48561 bytes .../6b9fd/image10.png | Bin 0 -> 27823 bytes .../a2ead/image10.png | Bin 0 -> 9696 bytes .../e3189/image10.png | Bin 0 -> 66444 bytes .../6b9fd/image12.png | Bin 33428 -> 32155 bytes .../a2ead/image12.png | Bin 12592 -> 12359 bytes .../6b9fd/image31.png | Bin 8566 -> 8586 bytes .../a2ead/image31.png | Bin 2806 -> 2838 bytes .../e3189/image31.png | Bin 22270 -> 22845 bytes .../45662/image13.png | Bin 0 -> 45128 bytes .../6b9fd/image13.png | Bin 0 -> 25373 bytes .../a2ead/image13.png | Bin 0 -> 9504 bytes .../e3189/image13.png | Bin 0 -> 62604 bytes .../6b9fd/image9.png | Bin 32235 -> 29055 bytes .../a2ead/image9.png | Bin 10480 -> 10274 bytes .../6b9fd/image4.png | Bin 42877 -> 43089 bytes .../a2ead/image4.png | Bin 13478 -> 14072 bytes .../e3189/image4.png | Bin 133371 -> 131485 bytes .../6b9fd/image28.png | Bin 36829 -> 36425 bytes .../a2ead/image28.png | Bin 11268 -> 12223 bytes .../e3189/image28.png | Bin 122476 -> 111880 bytes .../6b9fd/image19.png | Bin 37570 -> 30641 bytes .../a2ead/image19.png | Bin 10154 -> 10314 bytes .../62da8/image13.png | Bin 0 -> 23812 bytes .../6b9fd/image13.png | Bin 0 -> 13809 bytes .../a2ead/image13.png | Bin 0 -> 6055 bytes .../e3189/image13.png | Bin 0 -> 30950 bytes .../6b9fd/image5.png | Bin 8789 -> 8808 bytes .../a2ead/image5.png | Bin 3540 -> 3588 bytes .../8356d/image56.jpg | Bin 5357 -> 5340 bytes .../bc760/image56.jpg | Bin 18301 -> 18251 bytes .../6b9fd/image19.png | Bin 15613 -> 14689 bytes .../a2ead/image19.png | Bin 6129 -> 6068 bytes .../e3189/image19.png | Bin 32960 -> 36039 bytes .../6b9fd/image45.png | Bin 20592 -> 20513 bytes .../a2ead/image45.png | Bin 6902 -> 6611 bytes .../6b9fd/image7.png | Bin 24022 -> 23670 bytes .../a2ead/image7.png | Bin 9863 -> 9487 bytes .../6b9fd/image6.png | Bin 29965 -> 24800 bytes .../a2ead/image6.png | Bin 9200 -> 8830 bytes .../6b9fd/image12.png | Bin 21331 -> 20797 bytes .../a2ead/image12.png | Bin 7667 -> 8027 bytes .../e3189/image12.png | Bin 44694 -> 42377 bytes .../a2ead/image36.png | Bin 4400 -> 4560 bytes .../42d54/image6.png | Bin 0 -> 10202 bytes .../6b9fd/image6.png | Bin 0 -> 11675 bytes .../a2ead/image6.png | Bin 0 -> 5416 bytes .../66caf/image9.png | Bin 0 -> 18293 bytes .../6b9fd/image9.png | Bin 0 -> 12561 bytes .../a2ead/image9.png | Bin 0 -> 5159 bytes .../6b9fd/image4.png | Bin 8153 -> 8685 bytes .../a2ead/image4.png | Bin 3572 -> 4038 bytes .../6b9fd/image38.png | Bin 24883 -> 24660 bytes .../a2ead/image38.png | Bin 7733 -> 7643 bytes .../e3189/image38.png | Bin 61565 -> 59552 bytes .../6b9fd/image10.png | Bin 23158 -> 25690 bytes .../a2ead/image10.png | Bin 8711 -> 8469 bytes .../6b9fd/image8.png | Bin 0 -> 18715 bytes .../a2ead/image8.png | Bin 0 -> 8539 bytes .../c61d0/image8.png | Bin 0 -> 26535 bytes .../e3189/image8.png | Bin 0 -> 43428 bytes .../6b9fd/image32.png | Bin 37723 -> 36418 bytes .../a2ead/image32.png | Bin 12358 -> 12253 bytes .../6b9fd/image25.png | Bin 45127 -> 51343 bytes .../a2ead/image25.png | Bin 15361 -> 13684 bytes .../8356d/image41.jpg | Bin 8760 -> 8732 bytes .../8356d/image42.jpg | Bin 8760 -> 8732 bytes .../44d59/image5.png | Bin 76018 -> 68312 bytes .../6b9fd/image5.png | Bin 12146 -> 13011 bytes .../a2ead/image5.png | Bin 3868 -> 3829 bytes .../a6d66/image5.png | Bin 102100 -> 103658 bytes .../e3189/image5.png | Bin 36272 -> 37019 bytes .../6b9fd/image35.png | Bin 7226 -> 7405 bytes .../a2ead/image35.png | Bin 2270 -> 2347 bytes .../6b9fd/image34.png | Bin 10241 -> 10500 bytes .../a2ead/image34.png | Bin 3345 -> 4582 bytes .../6b9fd/image22.png | Bin 26836 -> 26800 bytes .../a2ead/image22.png | Bin 8910 -> 8723 bytes .../e3189/image22.png | Bin 54649 -> 58047 bytes .../6b9fd/image14.png | Bin 0 -> 10038 bytes .../a2ead/image14.png | Bin 0 -> 4465 bytes .../c1b63/image14.png | Bin 0 -> 13739 bytes .../e3189/image14.png | Bin 0 -> 19686 bytes .../6b9fd/image11.png | Bin 15538 -> 15897 bytes .../a2ead/image11.png | Bin 5871 -> 5671 bytes .../e3189/image11.png | Bin 29908 -> 36021 bytes .../6b9fd/image46.png | Bin 22355 -> 21133 bytes .../a2ead/image46.png | Bin 7228 -> 7339 bytes .../6b9fd/image22.png | Bin 49559 -> 48430 bytes .../a2ead/image22.png | Bin 13011 -> 13261 bytes .../6b9fd/image3.png | Bin 14899 -> 15395 bytes .../a2ead/image3.png | Bin 5717 -> 5688 bytes .../6b9fd/image6.png | Bin 7266 -> 6596 bytes .../a2ead/image6.png | Bin 1735 -> 1627 bytes .../2f6f6/image15.png | Bin 0 -> 35331 bytes .../6b9fd/image15.png | Bin 0 -> 20734 bytes .../a2ead/image15.png | Bin 0 -> 8321 bytes .../e3189/image15.png | Bin 0 -> 49450 bytes .../45662/image12.png | Bin 0 -> 37573 bytes .../6b9fd/image12.png | Bin 0 -> 22966 bytes .../a2ead/image12.png | Bin 0 -> 8209 bytes .../e3189/image12.png | Bin 0 -> 52185 bytes .../29c1d/image14.png | Bin 0 -> 54293 bytes .../6b9fd/image14.png | Bin 0 -> 31632 bytes .../a2ead/image14.png | Bin 0 -> 10942 bytes .../e3189/image14.png | Bin 0 -> 79673 bytes .../6b9fd/image24.png | Bin 52669 -> 48119 bytes .../a2ead/image24.png | Bin 13798 -> 14396 bytes .../6b9fd/image47.png | Bin 29044 -> 29889 bytes .../a2ead/image47.png | Bin 9843 -> 9846 bytes .../081d5/image11.png | Bin 0 -> 19000 bytes .../6b9fd/image11.png | Bin 0 -> 12618 bytes .../a2ead/image11.png | Bin 0 -> 4348 bytes .../e3189/image11.png | Bin 0 -> 30291 bytes .../a2ead/image26.png | Bin 9065 -> 9185 bytes .../6b9fd/image20.png | Bin 25951 -> 25063 bytes .../a2ead/image20.png | Bin 9520 -> 9554 bytes .../e3189/image20.png | Bin 67588 -> 63034 bytes .../29c1d/image15.png | Bin 0 -> 9741 bytes .../6b9fd/image15.png | Bin 0 -> 10670 bytes .../a2ead/image15.png | Bin 0 -> 4921 bytes .../e3189/image15.png | Bin 0 -> 20021 bytes .../8356d/image1.jpg | Bin 7359 -> 7302 bytes .../bc760/image1.jpg | Bin 20487 -> 20252 bytes .../6b9fd/image9.png | Bin 20898 -> 21438 bytes .../a2ead/image9.png | Bin 9029 -> 8510 bytes .../6b9fd/image9.png | Bin 0 -> 27628 bytes .../a2ead/image9.png | Bin 0 -> 10596 bytes .../e3189/image9.png | Bin 0 -> 61111 bytes .../e3829/image9.png | Bin 0 -> 30189 bytes .../6b9fd/image21.png | Bin 7380 -> 6893 bytes .../a2ead/image21.png | Bin 2229 -> 2404 bytes .../e3189/image21.png | Bin 19674 -> 18409 bytes .../6b9fd/image53.png | Bin 4134 -> 4120 bytes .../a2ead/image53.png | Bin 2001 -> 2073 bytes .../6b9fd/image50.png | Bin 16754 -> 16991 bytes .../a2ead/image50.png | Bin 7245 -> 7079 bytes .../6b9fd/image15.png | Bin 19044 -> 18865 bytes .../a2ead/image15.png | Bin 7992 -> 7498 bytes .../a2ead/image27.png | Bin 9356 -> 9925 bytes .../33e10/image16.png | Bin 0 -> 14948 bytes .../6b9fd/image16.png | Bin 0 -> 19612 bytes .../a2ead/image16.png | Bin 0 -> 7142 bytes .../6b9fd/image4.png | Bin 0 -> 52158 bytes .../a2ead/image4.png | Bin 0 -> 17519 bytes .../aec65/image4.png | Bin 0 -> 56314 bytes .../8356d/image44.jpg | Bin 4819 -> 4598 bytes .../af659/image44.jpg | Bin 31465 -> 31042 bytes .../bc760/image44.jpg | Bin 12553 -> 12467 bytes .../6b9fd/image2.png | Bin 22999 -> 22277 bytes .../a2ead/image2.png | Bin 8089 -> 8210 bytes .../6b9fd/image11.png | Bin 23411 -> 21621 bytes .../a2ead/image11.png | Bin 7722 -> 7807 bytes .../6b9fd/image3.png | Bin 25553 -> 26237 bytes .../a2ead/image3.png | Bin 8448 -> 8882 bytes .../6b9fd/image7.png | Bin 44019 -> 38543 bytes .../a2ead/image7.png | Bin 12992 -> 13061 bytes .../e3189/image7.png | Bin 127317 -> 105019 bytes .../6b9fd/image37.png | Bin 16645 -> 15920 bytes .../a2ead/image37.png | Bin 5325 -> 5167 bytes .../0d6fe/image5.png | Bin 0 -> 42362 bytes .../6b9fd/image5.png | Bin 0 -> 26084 bytes .../a2ead/image5.png | Bin 0 -> 10614 bytes .../e3189/image5.png | Bin 0 -> 68114 bytes .../669eb/image10.png | Bin 0 -> 19310 bytes .../6b9fd/image10.png | Bin 0 -> 11231 bytes .../a2ead/image10.png | Bin 0 -> 5128 bytes .../e3189/image10.png | Bin 0 -> 26462 bytes .../6b9fd/image20.png | Bin 33953 -> 33049 bytes .../a2ead/image20.png | Bin 12748 -> 12410 bytes .../6b9fd/image8.png | Bin 14509 -> 14473 bytes .../a2ead/image8.png | Bin 5474 -> 5587 bytes .../412e0/image8.png | Bin 0 -> 272362 bytes .../44d59/image8.png | Bin 0 -> 99721 bytes .../6b9fd/image8.png | Bin 0 -> 22927 bytes .../a2ead/image8.png | Bin 0 -> 10004 bytes .../a6d66/image8.png | Bin 0 -> 161198 bytes .../e3189/image8.png | Bin 0 -> 63624 bytes .../6b9fd/image6.png | Bin 0 -> 16115 bytes .../78a22/image6.png | Bin 0 -> 10613 bytes .../a2ead/image6.png | Bin 0 -> 7051 bytes .../a2ead/image43.png | Bin 4565 -> 4441 bytes .../6b9fd/image10.png | Bin 0 -> 9395 bytes .../a2ead/image10.png | Bin 0 -> 4191 bytes .../e3189/image10.png | Bin 0 -> 20815 bytes .../e9140/image10.png | Bin 0 -> 14222 bytes .../248b0/image3.png | Bin 0 -> 10682 bytes .../6b9fd/image3.png | Bin 0 -> 6212 bytes .../a2ead/image3.png | Bin 0 -> 3211 bytes .../e3189/image3.png | Bin 0 -> 14412 bytes .../6b9fd/image54.png | Bin 21188 -> 21851 bytes .../6b9fd/image55.png | Bin 21188 -> 21851 bytes .../a2ead/image54.png | Bin 8723 -> 8372 bytes .../a2ead/image55.png | Bin 8723 -> 8372 bytes .../6b9fd/image51.png | Bin 29911 -> 31141 bytes .../a2ead/image51.png | Bin 9919 -> 10837 bytes .../6b9fd/image33.png | Bin 6305 -> 6239 bytes .../a2ead/image33.png | Bin 1916 -> 2049 bytes .../6b9fd/image18.png | Bin 12041 -> 11502 bytes .../a2ead/image18.png | Bin 4131 -> 3803 bytes .../e3189/image18.png | Bin 26015 -> 26569 bytes .../6b9fd/image17.png | Bin 36455 -> 35497 bytes .../a2ead/image17.png | Bin 11867 -> 12011 bytes .../06437/image12.png | Bin 0 -> 3947 bytes .../45662/image2.png | Bin 0 -> 37163 bytes .../6b9fd/image2.png | Bin 0 -> 22837 bytes .../a2ead/image2.png | Bin 0 -> 8541 bytes .../e3189/image2.png | Bin 0 -> 51589 bytes .../44d59/image6.png | Bin 58684 -> 63472 bytes .../6b9fd/image6.png | Bin 11203 -> 11230 bytes .../a2ead/image6.png | Bin 3652 -> 3605 bytes .../a6d66/image6.png | Bin 95884 -> 95793 bytes .../e3189/image6.png | Bin 32804 -> 33814 bytes .../6b9fd/image49.png | Bin 13190 -> 12778 bytes .../a2ead/image49.png | Bin 6272 -> 5638 bytes .../6b9fd/image39.png | Bin 31818 -> 31230 bytes .../6b9fd/image40.png | Bin 31818 -> 31230 bytes .../a2ead/image39.png | Bin 11389 -> 11282 bytes .../a2ead/image40.png | Bin 11389 -> 11282 bytes .../5ecaa/image7.png | Bin 0 -> 608 bytes .../6b9fd/image14.png | Bin 8811 -> 8708 bytes .../a2ead/image14.png | Bin 2953 -> 2944 bytes .../e3189/image14.png | Bin 23879 -> 24439 bytes .../6b9fd/image14.png | Bin 0 -> 21580 bytes .../a2ead/image14.png | Bin 0 -> 7737 bytes .../e5715/image14.png | Bin 0 -> 15564 bytes .../6b9fd/image15.png | Bin 0 -> 21042 bytes .../a2ead/image15.png | Bin 0 -> 7836 bytes .../cc8d6/image15.png | Bin 0 -> 17381 bytes .../6b9fd/image8.png | Bin 0 -> 28130 bytes .../a2ead/image8.png | Bin 0 -> 12273 bytes .../c483d/image8.png | Bin 0 -> 38125 bytes .../6b9fd/image17.png | Bin 13222 -> 14254 bytes .../a2ead/image17.png | Bin 6198 -> 4970 bytes .../5c98f/image16.png | Bin 0 -> 17571 bytes .../6b9fd/image16.png | Bin 0 -> 9959 bytes .../a2ead/image16.png | Bin 0 -> 4795 bytes .../e3189/image16.png | Bin 0 -> 23021 bytes .../6b9fd/image13.png | Bin 0 -> 28946 bytes .../a2ead/image13.png | Bin 0 -> 9488 bytes .../eb3fa/image13.png | Bin 0 -> 62439 bytes .../44d59/image7.png | Bin 0 -> 142429 bytes .../6b9fd/image7.png | Bin 0 -> 33835 bytes .../a2ead/image7.png | Bin 0 -> 14068 bytes .../a6d66/image7.png | Bin 0 -> 234756 bytes .../e3189/image7.png | Bin 0 -> 82227 bytes .../e4ab3/image7.png | Bin 0 -> 335004 bytes .../a2ead/image30.png | Bin 1693 -> 1904 bytes .../webpack-runtime-3d03cec2ff7efdde83d9.js | 2 - .../webpack-runtime-989ddf52d489f6f735fc.js | 2 + ...bpack-runtime-989ddf52d489f6f735fc.js.map} | 2 +- sites/oteguide/webpack.stats.json | 2 +- 436 files changed, 3882 insertions(+), 291 deletions(-) delete mode 100644 sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js delete mode 100644 sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js.map create mode 100644 sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js create mode 100644 sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js.map create mode 100644 sites/oteguide/8-2c321e0104aa1146d919.js rename sites/oteguide/{8-c7a1bac6e40fad7fe9b9.js.LICENSE.txt => 8-2c321e0104aa1146d919.js.LICENSE.txt} (97%) create mode 100644 sites/oteguide/8-2c321e0104aa1146d919.js.map delete mode 100644 sites/oteguide/8-c7a1bac6e40fad7fe9b9.js delete mode 100644 sites/oteguide/8-c7a1bac6e40fad7fe9b9.js.map delete mode 100644 sites/oteguide/9-147855b00f17a522fcc2.js.map rename sites/oteguide/{9-147855b00f17a522fcc2.js => 9-17375f5de1d5e638db36.js} (99%) rename sites/oteguide/{9-147855b00f17a522fcc2.js.LICENSE.txt => 9-17375f5de1d5e638db36.js.LICENSE.txt} (100%) create mode 100644 sites/oteguide/9-17375f5de1d5e638db36.js.map create mode 100644 sites/oteguide/acronyms/index.html delete mode 100644 sites/oteguide/app-55220dc7c065ea1bf3d7.js delete mode 100644 sites/oteguide/app-55220dc7c065ea1bf3d7.js.map create mode 100644 sites/oteguide/app-eec04d2f552ddc7b4bf2.js rename sites/oteguide/{app-55220dc7c065ea1bf3d7.js.LICENSE.txt => app-eec04d2f552ddc7b4bf2.js.LICENSE.txt} (100%) create mode 100644 sites/oteguide/app-eec04d2f552ddc7b4bf2.js.map create mode 100644 sites/oteguide/commons-58ffe4445524790e8a26.js create mode 100644 sites/oteguide/commons-58ffe4445524790e8a26.js.map delete mode 100644 sites/oteguide/commons-86b49c52005df6b1cbb9.js delete mode 100644 sites/oteguide/commons-86b49c52005df6b1cbb9.js.map create mode 100644 sites/oteguide/fn_guides/OTE_construct_development_guide/index.html create mode 100644 sites/oteguide/fn_guides/evaluation_and_reporting_guide/index.html create mode 100644 sites/oteguide/fn_guides/measures_guide/index.html create mode 100644 sites/oteguide/fn_guides/test_capability_guide/index.html create mode 100644 sites/oteguide/page-data/acronyms/page-data.json create mode 100644 sites/oteguide/page-data/fn_guides/OTE_construct_development_guide/page-data.json create mode 100644 sites/oteguide/page-data/fn_guides/evaluation_and_reporting_guide/page-data.json create mode 100644 sites/oteguide/page-data/fn_guides/measures_guide/page-data.json create mode 100644 sites/oteguide/page-data/fn_guides/test_capability_guide/page-data.json create mode 100644 sites/oteguide/static/00877f36d1251accb8ee1e7fe7d01628/508ef/image9.png create mode 100644 sites/oteguide/static/00877f36d1251accb8ee1e7fe7d01628/6b9fd/image9.png create mode 100644 sites/oteguide/static/00877f36d1251accb8ee1e7fe7d01628/a2ead/image9.png create mode 100644 sites/oteguide/static/068278f9f8136483e8e782c16d2689d4/289dd/image11.png create mode 100644 sites/oteguide/static/068278f9f8136483e8e782c16d2689d4/6b9fd/image11.png create mode 100644 sites/oteguide/static/068278f9f8136483e8e782c16d2689d4/a2ead/image11.png create mode 100644 sites/oteguide/static/068278f9f8136483e8e782c16d2689d4/e3189/image11.png create mode 100644 sites/oteguide/static/0af8f41b7293a3dced7f85fd09684cbb/6b9fd/image3.png create mode 100644 sites/oteguide/static/0af8f41b7293a3dced7f85fd09684cbb/6c2de/image3.png create mode 100644 sites/oteguide/static/0af8f41b7293a3dced7f85fd09684cbb/a2ead/image3.png create mode 100644 sites/oteguide/static/0af8f41b7293a3dced7f85fd09684cbb/e3189/image3.png create mode 100644 sites/oteguide/static/146a07273349dbc36954330a63b5388e/6b9fd/image11.png create mode 100644 sites/oteguide/static/146a07273349dbc36954330a63b5388e/a2ead/image11.png create mode 100644 sites/oteguide/static/146a07273349dbc36954330a63b5388e/efc66/image11.png create mode 100644 sites/oteguide/static/15c01df8a9fa6f626567e43efe3eaffe/6b9fd/image2.png create mode 100644 sites/oteguide/static/15c01df8a9fa6f626567e43efe3eaffe/a2ead/image2.png create mode 100644 sites/oteguide/static/15c01df8a9fa6f626567e43efe3eaffe/bd9eb/image2.png create mode 100644 sites/oteguide/static/15c01df8a9fa6f626567e43efe3eaffe/e3189/image2.png create mode 100644 sites/oteguide/static/1b4ce8b1d68a710375991db28f1461ba/6b9fd/image5.png create mode 100644 sites/oteguide/static/1b4ce8b1d68a710375991db28f1461ba/a2ead/image5.png create mode 100644 sites/oteguide/static/1b4ce8b1d68a710375991db28f1461ba/b79a5/image5.png create mode 100644 sites/oteguide/static/1b4ce8b1d68a710375991db28f1461ba/e3189/image5.png create mode 100644 sites/oteguide/static/1eed82d67c46689b62a7e6728fc45a05/6b9fd/image12.png create mode 100644 sites/oteguide/static/1eed82d67c46689b62a7e6728fc45a05/a2ead/image12.png create mode 100644 sites/oteguide/static/1eed82d67c46689b62a7e6728fc45a05/c56af/image12.png create mode 100644 sites/oteguide/static/1eed82d67c46689b62a7e6728fc45a05/e3189/image12.png create mode 100644 sites/oteguide/static/3712e01ffbfebd9b130c15c6a7fd1b5c/6b9fd/image4.png create mode 100644 sites/oteguide/static/3712e01ffbfebd9b130c15c6a7fd1b5c/73a2e/image4.png create mode 100644 sites/oteguide/static/3712e01ffbfebd9b130c15c6a7fd1b5c/a2ead/image4.png create mode 100644 sites/oteguide/static/3712e01ffbfebd9b130c15c6a7fd1b5c/e3189/image4.png create mode 100644 sites/oteguide/static/3a850abe9fde7feb04b16b5dcfbb9380/5819f/image7.png create mode 100644 sites/oteguide/static/3a850abe9fde7feb04b16b5dcfbb9380/6b9fd/image7.png create mode 100644 sites/oteguide/static/3a850abe9fde7feb04b16b5dcfbb9380/a2ead/image7.png create mode 100644 sites/oteguide/static/3a850abe9fde7feb04b16b5dcfbb9380/e3189/image7.png create mode 100644 sites/oteguide/static/3c52401eb66650bf114cbd98cbac9881/45662/image10.png create mode 100644 sites/oteguide/static/3c52401eb66650bf114cbd98cbac9881/6b9fd/image10.png create mode 100644 sites/oteguide/static/3c52401eb66650bf114cbd98cbac9881/a2ead/image10.png create mode 100644 sites/oteguide/static/3c52401eb66650bf114cbd98cbac9881/e3189/image10.png create mode 100644 sites/oteguide/static/3ff8742e484549c66f3022e8c4ce41e9/45662/image13.png create mode 100644 sites/oteguide/static/3ff8742e484549c66f3022e8c4ce41e9/6b9fd/image13.png create mode 100644 sites/oteguide/static/3ff8742e484549c66f3022e8c4ce41e9/a2ead/image13.png create mode 100644 sites/oteguide/static/3ff8742e484549c66f3022e8c4ce41e9/e3189/image13.png create mode 100644 sites/oteguide/static/494a1319872ca8029c3f59b6fb1b72d2/62da8/image13.png create mode 100644 sites/oteguide/static/494a1319872ca8029c3f59b6fb1b72d2/6b9fd/image13.png create mode 100644 sites/oteguide/static/494a1319872ca8029c3f59b6fb1b72d2/a2ead/image13.png create mode 100644 sites/oteguide/static/494a1319872ca8029c3f59b6fb1b72d2/e3189/image13.png create mode 100644 sites/oteguide/static/64a5740f114bce09bca2bf11f9a2d76e/42d54/image6.png create mode 100644 sites/oteguide/static/64a5740f114bce09bca2bf11f9a2d76e/6b9fd/image6.png create mode 100644 sites/oteguide/static/64a5740f114bce09bca2bf11f9a2d76e/a2ead/image6.png create mode 100644 sites/oteguide/static/67a8e7809655d9884d926e93f455b88a/66caf/image9.png create mode 100644 sites/oteguide/static/67a8e7809655d9884d926e93f455b88a/6b9fd/image9.png create mode 100644 sites/oteguide/static/67a8e7809655d9884d926e93f455b88a/a2ead/image9.png create mode 100644 sites/oteguide/static/6b9833f68a1524a0b0cf7cfa443edbc8/6b9fd/image8.png create mode 100644 sites/oteguide/static/6b9833f68a1524a0b0cf7cfa443edbc8/a2ead/image8.png create mode 100644 sites/oteguide/static/6b9833f68a1524a0b0cf7cfa443edbc8/c61d0/image8.png create mode 100644 sites/oteguide/static/6b9833f68a1524a0b0cf7cfa443edbc8/e3189/image8.png create mode 100644 sites/oteguide/static/7816b04b8896b481dd69bc60ce7b5cae/6b9fd/image14.png create mode 100644 sites/oteguide/static/7816b04b8896b481dd69bc60ce7b5cae/a2ead/image14.png create mode 100644 sites/oteguide/static/7816b04b8896b481dd69bc60ce7b5cae/c1b63/image14.png create mode 100644 sites/oteguide/static/7816b04b8896b481dd69bc60ce7b5cae/e3189/image14.png create mode 100644 sites/oteguide/static/85d2923d3fca34d2087f79a66d925e25/2f6f6/image15.png create mode 100644 sites/oteguide/static/85d2923d3fca34d2087f79a66d925e25/6b9fd/image15.png create mode 100644 sites/oteguide/static/85d2923d3fca34d2087f79a66d925e25/a2ead/image15.png create mode 100644 sites/oteguide/static/85d2923d3fca34d2087f79a66d925e25/e3189/image15.png create mode 100644 sites/oteguide/static/884fffcade99ca845f2e3cc372cc89d9/45662/image12.png create mode 100644 sites/oteguide/static/884fffcade99ca845f2e3cc372cc89d9/6b9fd/image12.png create mode 100644 sites/oteguide/static/884fffcade99ca845f2e3cc372cc89d9/a2ead/image12.png create mode 100644 sites/oteguide/static/884fffcade99ca845f2e3cc372cc89d9/e3189/image12.png create mode 100644 sites/oteguide/static/8888bba70268037c536a218fe81ca688/29c1d/image14.png create mode 100644 sites/oteguide/static/8888bba70268037c536a218fe81ca688/6b9fd/image14.png create mode 100644 sites/oteguide/static/8888bba70268037c536a218fe81ca688/a2ead/image14.png create mode 100644 sites/oteguide/static/8888bba70268037c536a218fe81ca688/e3189/image14.png create mode 100644 sites/oteguide/static/93d6e0e7234224240a45067b9ea22f05/081d5/image11.png create mode 100644 sites/oteguide/static/93d6e0e7234224240a45067b9ea22f05/6b9fd/image11.png create mode 100644 sites/oteguide/static/93d6e0e7234224240a45067b9ea22f05/a2ead/image11.png create mode 100644 sites/oteguide/static/93d6e0e7234224240a45067b9ea22f05/e3189/image11.png create mode 100644 sites/oteguide/static/99815a5456ca70df67c2d114b4552b48/29c1d/image15.png create mode 100644 sites/oteguide/static/99815a5456ca70df67c2d114b4552b48/6b9fd/image15.png create mode 100644 sites/oteguide/static/99815a5456ca70df67c2d114b4552b48/a2ead/image15.png create mode 100644 sites/oteguide/static/99815a5456ca70df67c2d114b4552b48/e3189/image15.png create mode 100644 sites/oteguide/static/9d82dda1880573be3bd02ea6f57a4533/6b9fd/image9.png create mode 100644 sites/oteguide/static/9d82dda1880573be3bd02ea6f57a4533/a2ead/image9.png create mode 100644 sites/oteguide/static/9d82dda1880573be3bd02ea6f57a4533/e3189/image9.png create mode 100644 sites/oteguide/static/9d82dda1880573be3bd02ea6f57a4533/e3829/image9.png create mode 100644 sites/oteguide/static/b0e68fbd01d37d0cd3a38ba8367feb26/33e10/image16.png create mode 100644 sites/oteguide/static/b0e68fbd01d37d0cd3a38ba8367feb26/6b9fd/image16.png create mode 100644 sites/oteguide/static/b0e68fbd01d37d0cd3a38ba8367feb26/a2ead/image16.png create mode 100644 sites/oteguide/static/b39f3d34c537aa7abc9c5d3db3e3423e/6b9fd/image4.png create mode 100644 sites/oteguide/static/b39f3d34c537aa7abc9c5d3db3e3423e/a2ead/image4.png create mode 100644 sites/oteguide/static/b39f3d34c537aa7abc9c5d3db3e3423e/aec65/image4.png create mode 100644 sites/oteguide/static/baccd1277005f889d1667dc7557661fa/0d6fe/image5.png create mode 100644 sites/oteguide/static/baccd1277005f889d1667dc7557661fa/6b9fd/image5.png create mode 100644 sites/oteguide/static/baccd1277005f889d1667dc7557661fa/a2ead/image5.png create mode 100644 sites/oteguide/static/baccd1277005f889d1667dc7557661fa/e3189/image5.png create mode 100644 sites/oteguide/static/bae1e4e348a78fabaf5658337ed25708/669eb/image10.png create mode 100644 sites/oteguide/static/bae1e4e348a78fabaf5658337ed25708/6b9fd/image10.png create mode 100644 sites/oteguide/static/bae1e4e348a78fabaf5658337ed25708/a2ead/image10.png create mode 100644 sites/oteguide/static/bae1e4e348a78fabaf5658337ed25708/e3189/image10.png create mode 100644 sites/oteguide/static/c5ad4772ebefa2bbe29a9a2f738fa756/412e0/image8.png create mode 100644 sites/oteguide/static/c5ad4772ebefa2bbe29a9a2f738fa756/44d59/image8.png create mode 100644 sites/oteguide/static/c5ad4772ebefa2bbe29a9a2f738fa756/6b9fd/image8.png create mode 100644 sites/oteguide/static/c5ad4772ebefa2bbe29a9a2f738fa756/a2ead/image8.png create mode 100644 sites/oteguide/static/c5ad4772ebefa2bbe29a9a2f738fa756/a6d66/image8.png create mode 100644 sites/oteguide/static/c5ad4772ebefa2bbe29a9a2f738fa756/e3189/image8.png create mode 100644 sites/oteguide/static/c63b7dbae6812abcf7b6b5d97ebbb864/6b9fd/image6.png create mode 100644 sites/oteguide/static/c63b7dbae6812abcf7b6b5d97ebbb864/78a22/image6.png create mode 100644 sites/oteguide/static/c63b7dbae6812abcf7b6b5d97ebbb864/a2ead/image6.png create mode 100644 sites/oteguide/static/ca059850c6d356ca47f16d936d93c9a1/6b9fd/image10.png create mode 100644 sites/oteguide/static/ca059850c6d356ca47f16d936d93c9a1/a2ead/image10.png create mode 100644 sites/oteguide/static/ca059850c6d356ca47f16d936d93c9a1/e3189/image10.png create mode 100644 sites/oteguide/static/ca059850c6d356ca47f16d936d93c9a1/e9140/image10.png create mode 100644 sites/oteguide/static/caf341903034649f50378463567c3773/248b0/image3.png create mode 100644 sites/oteguide/static/caf341903034649f50378463567c3773/6b9fd/image3.png create mode 100644 sites/oteguide/static/caf341903034649f50378463567c3773/a2ead/image3.png create mode 100644 sites/oteguide/static/caf341903034649f50378463567c3773/e3189/image3.png create mode 100644 sites/oteguide/static/d16f8a9984ee6f264c7746c87c873614/06437/image12.png create mode 100644 sites/oteguide/static/d1cb86a64fbd92e448b7cbc0614256b0/45662/image2.png create mode 100644 sites/oteguide/static/d1cb86a64fbd92e448b7cbc0614256b0/6b9fd/image2.png create mode 100644 sites/oteguide/static/d1cb86a64fbd92e448b7cbc0614256b0/a2ead/image2.png create mode 100644 sites/oteguide/static/d1cb86a64fbd92e448b7cbc0614256b0/e3189/image2.png create mode 100644 sites/oteguide/static/e246abddf2a51a9e75b101fe3824e795/5ecaa/image7.png create mode 100644 sites/oteguide/static/e6a04a7d94d01652d98ca181f791f26e/6b9fd/image14.png create mode 100644 sites/oteguide/static/e6a04a7d94d01652d98ca181f791f26e/a2ead/image14.png create mode 100644 sites/oteguide/static/e6a04a7d94d01652d98ca181f791f26e/e5715/image14.png create mode 100644 sites/oteguide/static/e6d5208c0a400e8b54ab8eb67b433df2/6b9fd/image15.png create mode 100644 sites/oteguide/static/e6d5208c0a400e8b54ab8eb67b433df2/a2ead/image15.png create mode 100644 sites/oteguide/static/e6d5208c0a400e8b54ab8eb67b433df2/cc8d6/image15.png create mode 100644 sites/oteguide/static/f1017db6f660a63c97b131a7227a0982/6b9fd/image8.png create mode 100644 sites/oteguide/static/f1017db6f660a63c97b131a7227a0982/a2ead/image8.png create mode 100644 sites/oteguide/static/f1017db6f660a63c97b131a7227a0982/c483d/image8.png create mode 100644 sites/oteguide/static/f58c73453be1fe2eb373edf77fa2e353/5c98f/image16.png create mode 100644 sites/oteguide/static/f58c73453be1fe2eb373edf77fa2e353/6b9fd/image16.png create mode 100644 sites/oteguide/static/f58c73453be1fe2eb373edf77fa2e353/a2ead/image16.png create mode 100644 sites/oteguide/static/f58c73453be1fe2eb373edf77fa2e353/e3189/image16.png create mode 100644 sites/oteguide/static/f6c992d4a47d7bfd84862de0027c7346/6b9fd/image13.png create mode 100644 sites/oteguide/static/f6c992d4a47d7bfd84862de0027c7346/a2ead/image13.png create mode 100644 sites/oteguide/static/f6c992d4a47d7bfd84862de0027c7346/eb3fa/image13.png create mode 100644 sites/oteguide/static/fa6e66c528a61855f6c7099891e53bcb/44d59/image7.png create mode 100644 sites/oteguide/static/fa6e66c528a61855f6c7099891e53bcb/6b9fd/image7.png create mode 100644 sites/oteguide/static/fa6e66c528a61855f6c7099891e53bcb/a2ead/image7.png create mode 100644 sites/oteguide/static/fa6e66c528a61855f6c7099891e53bcb/a6d66/image7.png create mode 100644 sites/oteguide/static/fa6e66c528a61855f6c7099891e53bcb/e3189/image7.png create mode 100644 sites/oteguide/static/fa6e66c528a61855f6c7099891e53bcb/e4ab3/image7.png delete mode 100644 sites/oteguide/webpack-runtime-3d03cec2ff7efdde83d9.js create mode 100644 sites/oteguide/webpack-runtime-989ddf52d489f6f735fc.js rename sites/oteguide/{webpack-runtime-3d03cec2ff7efdde83d9.js.map => webpack-runtime-989ddf52d489f6f735fc.js.map} (97%) diff --git a/sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js b/sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js deleted file mode 100644 index 619232dd..00000000 --- a/sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js +++ /dev/null @@ -1,2 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{cSo1:function(t,e,i){"use strict";(function(t){i.d(e,"a",(function(){return Ci}));i("n/30"),i("daqR");var r=i("1OyB"),s=i("vuIU"),n=i("ReuC"),a=i("Ji7U"),o=i("md7G"),p=i("foSv");function h(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 Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(l){return!1}}();return function(){var i,r=Object(p.a)(t);if(e){var s=Object(p.a)(this).constructor;i=Reflect.construct(r,arguments,s)}else i=r.apply(this,arguments);return Object(o.a)(this,i)}}var c={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},l="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",u={5:l,6:l+" const class extends export import super"},d=/^in(stanceof)?$/,f="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࢽऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿯ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞹꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",m="‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ංඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ູົຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭ᳲ-᳴᳷-᳹᷀-᷹᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_",y=new RegExp("["+f+"]"),g=new RegExp("["+f+m+"]");f=m=null;var v=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,477,28,11,0,9,21,190,52,76,44,33,24,27,35,30,0,12,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,54,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,26,230,43,117,63,32,0,257,0,11,39,8,0,22,0,12,39,3,3,20,0,35,56,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,270,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,689,63,129,68,12,0,67,12,65,1,31,6129,15,754,9486,286,82,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,60,67,1213,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,3,5761,15,7472,3104,541],x=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,525,10,176,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,4,9,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,280,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,2214,6,110,6,6,9,792487,239];function b(t,e){for(var i=65536,r=0;rt)return!1;if((i+=e[r+1])>=t)return!0}}function _(t,e){return t<65?36===t:t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&y.test(String.fromCharCode(t)):!1!==e&&b(t,v)))}function k(t,e){return t<48?36===t:t<58||!(t<65)&&(t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&g.test(String.fromCharCode(t)):!1!==e&&(b(t,v)||b(t,x)))))}var S=function(t,e){void 0===e&&(e={}),this.label=t,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop||null,this.updateContext=null};function w(t,e){return new S(t,{beforeExpr:!0,binop:e})}var E={beforeExpr:!0},C={startsExpr:!0},A={};function I(t,e){return void 0===e&&(e={}),e.keyword=t,A[t]=new S(t,e)}var L={num:new S("num",C),regexp:new S("regexp",C),string:new S("string",C),name:new S("name",C),eof:new S("eof"),bracketL:new S("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new S("]"),braceL:new S("{",{beforeExpr:!0,startsExpr:!0}),braceR:new S("}"),parenL:new S("(",{beforeExpr:!0,startsExpr:!0}),parenR:new S(")"),comma:new S(",",E),semi:new S(";",E),colon:new S(":",E),dot:new S("."),question:new S("?",E),arrow:new S("=>",E),template:new S("template"),invalidTemplate:new S("invalidTemplate"),ellipsis:new S("...",E),backQuote:new S("`",C),dollarBraceL:new S("${",{beforeExpr:!0,startsExpr:!0}),eq:new S("=",{beforeExpr:!0,isAssign:!0}),assign:new S("_=",{beforeExpr:!0,isAssign:!0}),incDec:new S("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new S("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:w("||",1),logicalAND:w("&&",2),bitwiseOR:w("|",3),bitwiseXOR:w("^",4),bitwiseAND:w("&",5),equality:w("==/!=/===/!==",6),relational:w("/<=/>=",7),bitShift:w("<>/>>>",8),plusMin:new S("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:w("%",10),star:w("*",10),slash:w("/",10),starstar:new S("**",{beforeExpr:!0}),_break:I("break"),_case:I("case",E),_catch:I("catch"),_continue:I("continue"),_debugger:I("debugger"),_default:I("default",E),_do:I("do",{isLoop:!0,beforeExpr:!0}),_else:I("else",E),_finally:I("finally"),_for:I("for",{isLoop:!0}),_function:I("function",C),_if:I("if"),_return:I("return",E),_switch:I("switch"),_throw:I("throw",E),_try:I("try"),_var:I("var"),_const:I("const"),_while:I("while",{isLoop:!0}),_with:I("with"),_new:I("new",{beforeExpr:!0,startsExpr:!0}),_this:I("this",C),_super:I("super",C),_class:I("class",C),_extends:I("extends",E),_export:I("export"),_import:I("import"),_null:I("null",C),_true:I("true",C),_false:I("false",C),_in:I("in",{beforeExpr:!0,binop:7}),_instanceof:I("instanceof",{beforeExpr:!0,binop:7}),_typeof:I("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:I("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:I("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},P=/\r\n?|\n|\u2028|\u2029/,N=new RegExp(P.source,"g");function O(t,e){return 10===t||13===t||!e&&(8232===t||8233===t)}var j=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,T=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,R=Object.prototype,V=R.hasOwnProperty,D=R.toString;function B(t,e){return V.call(t,e)}var F=Array.isArray||function(t){return"[object Array]"===D.call(t)};function M(t){return new RegExp("^(?:"+t.replace(/ /g,"|")+")$")}var U=function(t,e){this.line=t,this.column=e};U.prototype.offset=function(t){return new U(this.line,this.column+t)};var q=function(t,e,i){this.start=e,this.end=i,null!==t.sourceFile&&(this.source=t.sourceFile)};function J(t,e){for(var i=1,r=0;;){N.lastIndex=r;var s=N.exec(t);if(!(s&&s.index=2015&&(e.ecmaVersion-=2009),null==e.allowReserved&&(e.allowReserved=e.ecmaVersion<5),F(e.onToken)){var r=e.onToken;e.onToken=function(t){return r.push(t)}}return F(e.onComment)&&(e.onComment=function(t,e){return function(i,r,s,n,a,o){var p={type:i?"Block":"Line",value:r,start:s,end:n};t.locations&&(p.loc=new q(this,a,o)),t.ranges&&(p.range=[s,n]),e.push(p)}}(e,e.onComment)),e}(t),this.sourceFile=t.sourceFile,this.keywords=M(u[t.ecmaVersion>=6?6:5]);var r="";if(!t.allowReserved){for(var s=t.ecmaVersion;!(r=c[s]);s--);"module"===t.sourceType&&(r+=" await")}this.reservedWords=M(r);var n=(r?r+" ":"")+c.strict;this.reservedWordsStrict=M(n),this.reservedWordsStrictBind=M(n+" "+c.strictBind),this.input=String(e),this.containsEsc=!1,i?(this.pos=i,this.lineStart=this.input.lastIndexOf("\n",i-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(P).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=L.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===t.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports={},0===this.pos&&t.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(1),this.regexpState=null},H={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0}};z.prototype.parse=function(){var t=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(t)},H.inFunction.get=function(){return(2&this.currentVarScope().flags)>0},H.inGenerator.get=function(){return(8&this.currentVarScope().flags)>0},H.inAsync.get=function(){return(4&this.currentVarScope().flags)>0},H.allowSuper.get=function(){return(64&this.currentThisScope().flags)>0},H.allowDirectSuper.get=function(){return(128&this.currentThisScope().flags)>0},H.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},z.prototype.inNonArrowFunction=function(){return(2&this.currentThisScope().flags)>0},z.extend=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];for(var i=this,r=0;r-1&&this.raiseRecoverable(t.trailingComma,"Comma is not permitted after the rest element");var i=e?t.parenthesizedAssign:t.parenthesizedBind;i>-1&&this.raiseRecoverable(i,"Parenthesized pattern")}},G.checkExpressionErrors=function(t,e){if(!t)return!1;var i=t.shorthandAssign,r=t.doubleProto;if(!e)return i>=0||r>=0;i>=0&&this.raise(i,"Shorthand property assignments are valid only in destructuring patterns"),r>=0&&this.raiseRecoverable(r,"Redefinition of __proto__ property")},G.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos=6&&(t.sourceType=this.options.sourceType),this.finishNode(t,"Program")};var Y={kind:"loop"},Z={kind:"switch"};$.isLet=function(t){if(this.options.ecmaVersion<6||!this.isContextual("let"))return!1;T.lastIndex=this.pos;var e=T.exec(this.input),i=this.pos+e[0].length,r=this.input.charCodeAt(i);if(91===r)return!0;if(t)return!1;if(123===r)return!0;if(_(r,!0)){for(var s=i+1;k(this.input.charCodeAt(s),!0);)++s;var n=this.input.slice(i,s);if(!d.test(n))return!0}return!1},$.isAsyncFunction=function(){if(this.options.ecmaVersion<8||!this.isContextual("async"))return!1;T.lastIndex=this.pos;var t=T.exec(this.input),e=this.pos+t[0].length;return!(P.test(this.input.slice(this.pos,e))||"function"!==this.input.slice(e,e+8)||e+8!==this.input.length&&k(this.input.charAt(e+8)))},$.parseStatement=function(t,e,i){var r,s=this.type,n=this.startNode();switch(this.isLet(t)&&(s=L._var,r="let"),s){case L._break:case L._continue:return this.parseBreakContinueStatement(n,s.keyword);case L._debugger:return this.parseDebuggerStatement(n);case L._do:return this.parseDoStatement(n);case L._for:return this.parseForStatement(n);case L._function:return t&&(this.strict||"if"!==t&&"label"!==t)&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(n,!1,!t);case L._class:return t&&this.unexpected(),this.parseClass(n,!0);case L._if:return this.parseIfStatement(n);case L._return:return this.parseReturnStatement(n);case L._switch:return this.parseSwitchStatement(n);case L._throw:return this.parseThrowStatement(n);case L._try:return this.parseTryStatement(n);case L._const:case L._var:return r=r||this.value,t&&"var"!==r&&this.unexpected(),this.parseVarStatement(n,r);case L._while:return this.parseWhileStatement(n);case L._with:return this.parseWithStatement(n);case L.braceL:return this.parseBlock(!0,n);case L.semi:return this.parseEmptyStatement(n);case L._export:case L._import:return this.options.allowImportExportEverywhere||(e||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),s===L._import?this.parseImport(n):this.parseExport(n,i);default:if(this.isAsyncFunction())return t&&this.unexpected(),this.next(),this.parseFunctionStatement(n,!0,!t);var a=this.value,o=this.parseExpression();return s===L.name&&"Identifier"===o.type&&this.eat(L.colon)?this.parseLabeledStatement(n,a,o,t):this.parseExpressionStatement(n,o)}},$.parseBreakContinueStatement=function(t,e){var i="break"===e;this.next(),this.eat(L.semi)||this.insertSemicolon()?t.label=null:this.type!==L.name?this.unexpected():(t.label=this.parseIdent(),this.semicolon());for(var r=0;r=6?this.eat(L.semi):this.semicolon(),this.finishNode(t,"DoWhileStatement")},$.parseForStatement=function(t){this.next();var e=this.options.ecmaVersion>=9&&(this.inAsync||!this.inFunction&&this.options.allowAwaitOutsideFunction)&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(Y),this.enterScope(0),this.expect(L.parenL),this.type===L.semi)return e>-1&&this.unexpected(e),this.parseFor(t,null);var i=this.isLet();if(this.type===L._var||this.type===L._const||i){var r=this.startNode(),s=i?"let":this.value;return this.next(),this.parseVar(r,!0,s),this.finishNode(r,"VariableDeclaration"),!(this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of"))||1!==r.declarations.length||"var"!==s&&r.declarations[0].init?(e>-1&&this.unexpected(e),this.parseFor(t,r)):(this.options.ecmaVersion>=9&&(this.type===L._in?e>-1&&this.unexpected(e):t.await=e>-1),this.parseForIn(t,r))}var n=new K,a=this.parseExpression(!0,n);return this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of")?(this.options.ecmaVersion>=9&&(this.type===L._in?e>-1&&this.unexpected(e):t.await=e>-1),this.toAssignable(a,!1,n),this.checkLVal(a),this.parseForIn(t,a)):(this.checkExpressionErrors(n,!0),e>-1&&this.unexpected(e),this.parseFor(t,a))},$.parseFunctionStatement=function(t,e,i){return this.next(),this.parseFunction(t,et|(i?0:it),!1,e)},$.parseIfStatement=function(t){return this.next(),t.test=this.parseParenExpression(),t.consequent=this.parseStatement("if"),t.alternate=this.eat(L._else)?this.parseStatement("if"):null,this.finishNode(t,"IfStatement")},$.parseReturnStatement=function(t){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(L.semi)||this.insertSemicolon()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")},$.parseSwitchStatement=function(t){var e;this.next(),t.discriminant=this.parseParenExpression(),t.cases=[],this.expect(L.braceL),this.labels.push(Z),this.enterScope(0);for(var i=!1;this.type!==L.braceR;)if(this.type===L._case||this.type===L._default){var r=this.type===L._case;e&&this.finishNode(e,"SwitchCase"),t.cases.push(e=this.startNode()),e.consequent=[],this.next(),r?e.test=this.parseExpression():(i&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),i=!0,e.test=null),this.expect(L.colon)}else e||this.unexpected(),e.consequent.push(this.parseStatement(null));return this.exitScope(),e&&this.finishNode(e,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(t,"SwitchStatement")},$.parseThrowStatement=function(t){return this.next(),P.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")};var tt=[];$.parseTryStatement=function(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.type===L._catch){var e=this.startNode();if(this.next(),this.eat(L.parenL)){e.param=this.parseBindingAtom();var i="Identifier"===e.param.type;this.enterScope(i?32:0),this.checkLVal(e.param,i?4:2),this.expect(L.parenR)}else this.options.ecmaVersion<10&&this.unexpected(),e.param=null,this.enterScope(0);e.body=this.parseBlock(!1),this.exitScope(),t.handler=this.finishNode(e,"CatchClause")}return t.finalizer=this.eat(L._finally)?this.parseBlock():null,t.handler||t.finalizer||this.raise(t.start,"Missing catch or finally clause"),this.finishNode(t,"TryStatement")},$.parseVarStatement=function(t,e){return this.next(),this.parseVar(t,!1,e),this.semicolon(),this.finishNode(t,"VariableDeclaration")},$.parseWhileStatement=function(t){return this.next(),t.test=this.parseParenExpression(),this.labels.push(Y),t.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(t,"WhileStatement")},$.parseWithStatement=function(t){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),t.object=this.parseParenExpression(),t.body=this.parseStatement("with"),this.finishNode(t,"WithStatement")},$.parseEmptyStatement=function(t){return this.next(),this.finishNode(t,"EmptyStatement")},$.parseLabeledStatement=function(t,e,i,r){for(var s=0,n=this.labels;s=0;o--){var p=this.labels[o];if(p.statementStart!==t.start)break;p.statementStart=this.start,p.kind=a}return this.labels.push({name:e,kind:a,statementStart:this.start}),t.body=this.parseStatement(r?-1===r.indexOf("label")?r+"label":r:"label"),this.labels.pop(),t.label=i,this.finishNode(t,"LabeledStatement")},$.parseExpressionStatement=function(t,e){return t.expression=e,this.semicolon(),this.finishNode(t,"ExpressionStatement")},$.parseBlock=function(t,e){for(void 0===t&&(t=!0),void 0===e&&(e=this.startNode()),e.body=[],this.expect(L.braceL),t&&this.enterScope(0);!this.eat(L.braceR);){var i=this.parseStatement(null);e.body.push(i)}return t&&this.exitScope(),this.finishNode(e,"BlockStatement")},$.parseFor=function(t,e){return t.init=e,this.expect(L.semi),t.test=this.type===L.semi?null:this.parseExpression(),this.expect(L.semi),t.update=this.type===L.parenR?null:this.parseExpression(),this.expect(L.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,"ForStatement")},$.parseForIn=function(t,e){var i=this.type===L._in?"ForInStatement":"ForOfStatement";return this.next(),"ForInStatement"===i&&("AssignmentPattern"===e.type||"VariableDeclaration"===e.type&&null!=e.declarations[0].init&&(this.strict||"Identifier"!==e.declarations[0].id.type))&&this.raise(e.start,"Invalid assignment in for-in loop head"),t.left=e,t.right="ForInStatement"===i?this.parseExpression():this.parseMaybeAssign(),this.expect(L.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,i)},$.parseVar=function(t,e,i){for(t.declarations=[],t.kind=i;;){var r=this.startNode();if(this.parseVarId(r,i),this.eat(L.eq)?r.init=this.parseMaybeAssign(e):"const"!==i||this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of")?"Identifier"===r.id.type||e&&(this.type===L._in||this.isContextual("of"))?r.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),t.declarations.push(this.finishNode(r,"VariableDeclarator")),!this.eat(L.comma))break}return t},$.parseVarId=function(t,e){"const"!==e&&"let"!==e||!this.isContextual("let")||this.raiseRecoverable(this.start,"let is disallowed as a lexically bound name"),t.id=this.parseBindingAtom(),this.checkLVal(t.id,"var"===e?1:2,!1)};var et=1,it=2;$.parseFunction=function(t,e,i,r){this.initFunction(t),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!r)&&(this.type===L.star&&e&it&&this.unexpected(),t.generator=this.eat(L.star)),this.options.ecmaVersion>=8&&(t.async=!!r),e&et&&(t.id=4&e&&this.type!==L.name?null:this.parseIdent(),!t.id||e&it||this.checkLVal(t.id,this.strict||t.generator||t.async?this.treatFunctionsAsVar?1:2:3));var s=this.yieldPos,n=this.awaitPos,a=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(W(t.async,t.generator)),e&et||(t.id=this.type===L.name?this.parseIdent():null),this.parseFunctionParams(t),this.parseFunctionBody(t,i,!1),this.yieldPos=s,this.awaitPos=n,this.awaitIdentPos=a,this.finishNode(t,e&et?"FunctionDeclaration":"FunctionExpression")},$.parseFunctionParams=function(t){this.expect(L.parenL),t.params=this.parseBindingList(L.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},$.parseClass=function(t,e){this.next();var i=this.strict;this.strict=!0,this.parseClassId(t,e),this.parseClassSuper(t);var r=this.startNode(),s=!1;for(r.body=[],this.expect(L.braceL);!this.eat(L.braceR);){var n=this.parseClassElement(null!==t.superClass);n&&(r.body.push(n),"MethodDefinition"===n.type&&"constructor"===n.kind&&(s&&this.raise(n.start,"Duplicate constructor in the same class"),s=!0))}return t.body=this.finishNode(r,"ClassBody"),this.strict=i,this.finishNode(t,e?"ClassDeclaration":"ClassExpression")},$.parseClassElement=function(t){var e=this;if(this.eat(L.semi))return null;var i=this.startNode(),r=function(t,r){void 0===r&&(r=!1);var s=e.start,n=e.startLoc;return!(!e.eatContextual(t)||(e.type===L.parenL||r&&e.canInsertSemicolon())&&(i.key&&e.unexpected(),i.computed=!1,i.key=e.startNodeAt(s,n),i.key.name=t,e.finishNode(i.key,"Identifier"),1))};i.kind="method",i.static=r("static");var s=this.eat(L.star),n=!1;s||(this.options.ecmaVersion>=8&&r("async",!0)?(n=!0,s=this.options.ecmaVersion>=9&&this.eat(L.star)):r("get")?i.kind="get":r("set")&&(i.kind="set")),i.key||this.parsePropertyName(i);var a=i.key,o=!1;return i.computed||i.static||!("Identifier"===a.type&&"constructor"===a.name||"Literal"===a.type&&"constructor"===a.value)?i.static&&"Identifier"===a.type&&"prototype"===a.name&&this.raise(a.start,"Classes may not have a static property named prototype"):("method"!==i.kind&&this.raise(a.start,"Constructor can't have get/set modifier"),s&&this.raise(a.start,"Constructor can't be a generator"),n&&this.raise(a.start,"Constructor can't be an async method"),i.kind="constructor",o=t),this.parseClassMethod(i,s,n,o),"get"===i.kind&&0!==i.value.params.length&&this.raiseRecoverable(i.value.start,"getter should have no params"),"set"===i.kind&&1!==i.value.params.length&&this.raiseRecoverable(i.value.start,"setter should have exactly one param"),"set"===i.kind&&"RestElement"===i.value.params[0].type&&this.raiseRecoverable(i.value.params[0].start,"Setter cannot use rest params"),i},$.parseClassMethod=function(t,e,i,r){return t.value=this.parseMethod(e,i,r),this.finishNode(t,"MethodDefinition")},$.parseClassId=function(t,e){this.type===L.name?(t.id=this.parseIdent(),e&&this.checkLVal(t.id,2,!1)):(!0===e&&this.unexpected(),t.id=null)},$.parseClassSuper=function(t){t.superClass=this.eat(L._extends)?this.parseExprSubscripts():null},$.parseExport=function(t,e){if(this.next(),this.eat(L.star))return this.expectContextual("from"),this.type!==L.string&&this.unexpected(),t.source=this.parseExprAtom(),this.semicolon(),this.finishNode(t,"ExportAllDeclaration");if(this.eat(L._default)){var i;if(this.checkExport(e,"default",this.lastTokStart),this.type===L._function||(i=this.isAsyncFunction())){var r=this.startNode();this.next(),i&&this.next(),t.declaration=this.parseFunction(r,4|et,!1,i)}else if(this.type===L._class){var s=this.startNode();t.declaration=this.parseClass(s,"nullableID")}else t.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(t,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())t.declaration=this.parseStatement(null),"VariableDeclaration"===t.declaration.type?this.checkVariableExport(e,t.declaration.declarations):this.checkExport(e,t.declaration.id.name,t.declaration.id.start),t.specifiers=[],t.source=null;else{if(t.declaration=null,t.specifiers=this.parseExportSpecifiers(e),this.eatContextual("from"))this.type!==L.string&&this.unexpected(),t.source=this.parseExprAtom();else{for(var n=0,a=t.specifiers;n=6&&t)switch(t.type){case"Identifier":this.inAsync&&"await"===t.name&&this.raise(t.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"RestElement":break;case"ObjectExpression":t.type="ObjectPattern",i&&this.checkPatternErrors(i,!0);for(var r=0,s=t.properties;r=8&&!n&&"async"===a.name&&!this.canInsertSemicolon()&&this.eat(L._function))return this.parseFunction(this.startNodeAt(r,s),0,!1,!0);if(i&&!this.canInsertSemicolon()){if(this.eat(L.arrow))return this.parseArrowExpression(this.startNodeAt(r,s),[a],!1);if(this.options.ecmaVersion>=8&&"async"===a.name&&this.type===L.name&&!n)return a=this.parseIdent(!1),!this.canInsertSemicolon()&&this.eat(L.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(r,s),[a],!0)}return a;case L.regexp:var o=this.value;return(e=this.parseLiteral(o.value)).regex={pattern:o.pattern,flags:o.flags},e;case L.num:case L.string:return this.parseLiteral(this.value);case L._null:case L._true:case L._false:return(e=this.startNode()).value=this.type===L._null?null:this.type===L._true,e.raw=this.type.keyword,this.next(),this.finishNode(e,"Literal");case L.parenL:var p=this.start,h=this.parseParenAndDistinguishExpression(i);return t&&(t.parenthesizedAssign<0&&!this.isSimpleAssignTarget(h)&&(t.parenthesizedAssign=p),t.parenthesizedBind<0&&(t.parenthesizedBind=p)),h;case L.bracketL:return e=this.startNode(),this.next(),e.elements=this.parseExprList(L.bracketR,!0,!0,t),this.finishNode(e,"ArrayExpression");case L.braceL:return this.parseObj(!1,t);case L._function:return e=this.startNode(),this.next(),this.parseFunction(e,0);case L._class:return this.parseClass(this.startNode(),!1);case L._new:return this.parseNew();case L.backQuote:return this.parseTemplate();default:this.unexpected()}},st.parseLiteral=function(t){var e=this.startNode();return e.value=t,e.raw=this.input.slice(this.start,this.end),this.next(),this.finishNode(e,"Literal")},st.parseParenExpression=function(){this.expect(L.parenL);var t=this.parseExpression();return this.expect(L.parenR),t},st.parseParenAndDistinguishExpression=function(t){var e,i=this.start,r=this.startLoc,s=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var n,a=this.start,o=this.startLoc,p=[],h=!0,c=!1,l=new K,u=this.yieldPos,d=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==L.parenR;){if(h?h=!1:this.expect(L.comma),s&&this.afterTrailingComma(L.parenR,!0)){c=!0;break}if(this.type===L.ellipsis){n=this.start,p.push(this.parseParenItem(this.parseRestBinding())),this.type===L.comma&&this.raise(this.start,"Comma is not permitted after the rest element");break}p.push(this.parseMaybeAssign(!1,l,this.parseParenItem))}var f=this.start,m=this.startLoc;if(this.expect(L.parenR),t&&!this.canInsertSemicolon()&&this.eat(L.arrow))return this.checkPatternErrors(l,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=u,this.awaitPos=d,this.parseParenArrowList(i,r,p);p.length&&!c||this.unexpected(this.lastTokStart),n&&this.unexpected(n),this.checkExpressionErrors(l,!0),this.yieldPos=u||this.yieldPos,this.awaitPos=d||this.awaitPos,p.length>1?((e=this.startNodeAt(a,o)).expressions=p,this.finishNodeAt(e,"SequenceExpression",f,m)):e=p[0]}else e=this.parseParenExpression();if(this.options.preserveParens){var y=this.startNodeAt(i,r);return y.expression=e,this.finishNode(y,"ParenthesizedExpression")}return e},st.parseParenItem=function(t){return t},st.parseParenArrowList=function(t,e,i){return this.parseArrowExpression(this.startNodeAt(t,e),i)};var nt=[];st.parseNew=function(){var t=this.startNode(),e=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(L.dot)){t.meta=e;var i=this.containsEsc;return t.property=this.parseIdent(!0),("target"!==t.property.name||i)&&this.raiseRecoverable(t.property.start,"The only valid meta property for new is new.target"),this.inNonArrowFunction()||this.raiseRecoverable(t.start,"new.target can only be used in functions"),this.finishNode(t,"MetaProperty")}var r=this.start,s=this.startLoc;return t.callee=this.parseSubscripts(this.parseExprAtom(),r,s,!0),t.arguments=this.eat(L.parenL)?this.parseExprList(L.parenR,this.options.ecmaVersion>=8,!1):nt,this.finishNode(t,"NewExpression")},st.parseTemplateElement=function(t){var e=t.isTagged,i=this.startNode();return this.type===L.invalidTemplate?(e||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),i.value={raw:this.value,cooked:null}):i.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),i.tail=this.type===L.backQuote,this.finishNode(i,"TemplateElement")},st.parseTemplate=function(t){void 0===t&&(t={});var e=t.isTagged;void 0===e&&(e=!1);var i=this.startNode();this.next(),i.expressions=[];var r=this.parseTemplateElement({isTagged:e});for(i.quasis=[r];!r.tail;)this.type===L.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(L.dollarBraceL),i.expressions.push(this.parseExpression()),this.expect(L.braceR),i.quasis.push(r=this.parseTemplateElement({isTagged:e}));return this.next(),this.finishNode(i,"TemplateLiteral")},st.isAsyncProp=function(t){return!t.computed&&"Identifier"===t.key.type&&"async"===t.key.name&&(this.type===L.name||this.type===L.num||this.type===L.string||this.type===L.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===L.star)&&!P.test(this.input.slice(this.lastTokEnd,this.start))},st.parseObj=function(t,e){var i=this.startNode(),r=!0,s={};for(i.properties=[],this.next();!this.eat(L.braceR);){if(r)r=!1;else if(this.expect(L.comma),this.afterTrailingComma(L.braceR))break;var n=this.parseProperty(t,e);t||this.checkPropClash(n,s,e),i.properties.push(n)}return this.finishNode(i,t?"ObjectPattern":"ObjectExpression")},st.parseProperty=function(t,e){var i,r,s,n,a=this.startNode();if(this.options.ecmaVersion>=9&&this.eat(L.ellipsis))return t?(a.argument=this.parseIdent(!1),this.type===L.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.finishNode(a,"RestElement")):(this.type===L.parenL&&e&&(e.parenthesizedAssign<0&&(e.parenthesizedAssign=this.start),e.parenthesizedBind<0&&(e.parenthesizedBind=this.start)),a.argument=this.parseMaybeAssign(!1,e),this.type===L.comma&&e&&e.trailingComma<0&&(e.trailingComma=this.start),this.finishNode(a,"SpreadElement"));this.options.ecmaVersion>=6&&(a.method=!1,a.shorthand=!1,(t||e)&&(s=this.start,n=this.startLoc),t||(i=this.eat(L.star)));var o=this.containsEsc;return this.parsePropertyName(a),!t&&!o&&this.options.ecmaVersion>=8&&!i&&this.isAsyncProp(a)?(r=!0,i=this.options.ecmaVersion>=9&&this.eat(L.star),this.parsePropertyName(a,e)):r=!1,this.parsePropertyValue(a,t,i,r,s,n,e,o),this.finishNode(a,"Property")},st.parsePropertyValue=function(t,e,i,r,s,n,a,o){(i||r)&&this.type===L.colon&&this.unexpected(),this.eat(L.colon)?(t.value=e?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,a),t.kind="init"):this.options.ecmaVersion>=6&&this.type===L.parenL?(e&&this.unexpected(),t.kind="init",t.method=!0,t.value=this.parseMethod(i,r)):e||o||!(this.options.ecmaVersion>=5)||t.computed||"Identifier"!==t.key.type||"get"!==t.key.name&&"set"!==t.key.name||this.type===L.comma||this.type===L.braceR?this.options.ecmaVersion>=6&&!t.computed&&"Identifier"===t.key.type?((i||r)&&this.unexpected(),this.checkUnreserved(t.key),"await"!==t.key.name||this.awaitIdentPos||(this.awaitIdentPos=s),t.kind="init",e?t.value=this.parseMaybeDefault(s,n,t.key):this.type===L.eq&&a?(a.shorthandAssign<0&&(a.shorthandAssign=this.start),t.value=this.parseMaybeDefault(s,n,t.key)):t.value=t.key,t.shorthand=!0):this.unexpected():((i||r)&&this.unexpected(),t.kind=t.key.name,this.parsePropertyName(t),t.value=this.parseMethod(!1),t.value.params.length!==("get"===t.kind?0:1)?this.raiseRecoverable(t.value.start,"get"===t.kind?"getter should have no params":"setter should have exactly one param"):"set"===t.kind&&"RestElement"===t.value.params[0].type&&this.raiseRecoverable(t.value.params[0].start,"Setter cannot use rest params"))},st.parsePropertyName=function(t){if(this.options.ecmaVersion>=6){if(this.eat(L.bracketL))return t.computed=!0,t.key=this.parseMaybeAssign(),this.expect(L.bracketR),t.key;t.computed=!1}return t.key=this.type===L.num||this.type===L.string?this.parseExprAtom():this.parseIdent(!0)},st.initFunction=function(t){t.id=null,this.options.ecmaVersion>=6&&(t.generator=t.expression=!1),this.options.ecmaVersion>=8&&(t.async=!1)},st.parseMethod=function(t,e,i){var r=this.startNode(),s=this.yieldPos,n=this.awaitPos,a=this.awaitIdentPos;return this.initFunction(r),this.options.ecmaVersion>=6&&(r.generator=t),this.options.ecmaVersion>=8&&(r.async=!!e),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(64|W(e,r.generator)|(i?128:0)),this.expect(L.parenL),r.params=this.parseBindingList(L.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(r,!1,!0),this.yieldPos=s,this.awaitPos=n,this.awaitIdentPos=a,this.finishNode(r,"FunctionExpression")},st.parseArrowExpression=function(t,e,i){var r=this.yieldPos,s=this.awaitPos,n=this.awaitIdentPos;return this.enterScope(16|W(i,!1)),this.initFunction(t),this.options.ecmaVersion>=8&&(t.async=!!i),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,t.params=this.toAssignableList(e,!0),this.parseFunctionBody(t,!0,!1),this.yieldPos=r,this.awaitPos=s,this.awaitIdentPos=n,this.finishNode(t,"ArrowFunctionExpression")},st.parseFunctionBody=function(t,e,i){var r=this.strict,s=!1;if(e&&this.type!==L.braceL)t.body=this.parseMaybeAssign(),t.expression=!0,this.checkParams(t,!1);else{var n=this.options.ecmaVersion>=7&&!this.isSimpleParamList(t.params);r&&!n||(s=this.strictDirective(this.end))&&n&&this.raiseRecoverable(t.start,"Illegal 'use strict' directive in function with non-simple parameter list");var a=this.labels;this.labels=[],s&&(this.strict=!0),this.checkParams(t,!r&&!s&&!e&&!i&&this.isSimpleParamList(t.params)),t.body=this.parseBlock(!1),t.expression=!1,this.adaptDirectivePrologue(t.body.body),this.labels=a}this.exitScope(),this.strict&&t.id&&this.checkLVal(t.id,5),this.strict=r},st.isSimpleParamList=function(t){for(var e=0,i=t;e-1||s.functions.indexOf(t)>-1||s.var.indexOf(t)>-1,s.lexical.push(t),this.inModule&&1&s.flags&&delete this.undefinedExports[t]}else if(4===e)this.currentScope().lexical.push(t);else if(3===e){var n=this.currentScope();r=this.treatFunctionsAsVar?n.lexical.indexOf(t)>-1:n.lexical.indexOf(t)>-1||n.var.indexOf(t)>-1,n.functions.push(t)}else for(var a=this.scopeStack.length-1;a>=0;--a){var o=this.scopeStack[a];if(o.lexical.indexOf(t)>-1&&!(32&o.flags&&o.lexical[0]===t)||!this.treatFunctionsAsVarInScope(o)&&o.functions.indexOf(t)>-1){r=!0;break}if(o.var.push(t),this.inModule&&1&o.flags&&delete this.undefinedExports[t],3&o.flags)break}r&&this.raiseRecoverable(i,"Identifier '"+t+"' has already been declared")},ot.checkLocalExport=function(t){-1===this.scopeStack[0].lexical.indexOf(t.name)&&-1===this.scopeStack[0].var.indexOf(t.name)&&(this.undefinedExports[t.name]=t)},ot.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},ot.currentVarScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(3&e.flags)return e}},ot.currentThisScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(3&e.flags&&!(16&e.flags))return e}};var ht=function(t,e,i){this.type="",this.start=e,this.end=0,t.options.locations&&(this.loc=new q(t,i)),t.options.directSourceFile&&(this.sourceFile=t.options.directSourceFile),t.options.ranges&&(this.range=[e,0])},ct=z.prototype;function lt(t,e,i,r){return t.type=e,t.end=i,this.options.locations&&(t.loc.end=r),this.options.ranges&&(t.range[1]=i),t}ct.startNode=function(){return new ht(this,this.start,this.startLoc)},ct.startNodeAt=function(t,e){return new ht(this,t,e)},ct.finishNode=function(t,e){return lt.call(this,t,e,this.lastTokEnd,this.lastTokEndLoc)},ct.finishNodeAt=function(t,e,i,r){return lt.call(this,t,e,i,r)};var ut=function(t,e,i,r,s){this.token=t,this.isExpr=!!e,this.preserveSpace=!!i,this.override=r,this.generator=!!s},dt={b_stat:new ut("{",!1),b_expr:new ut("{",!0),b_tmpl:new ut("${",!1),p_stat:new ut("(",!1),p_expr:new ut("(",!0),q_tmpl:new ut("`",!0,!0,(function(t){return t.tryReadTemplateToken()})),f_stat:new ut("function",!1),f_expr:new ut("function",!0),f_expr_gen:new ut("function",!0,!1,null,!0),f_gen:new ut("function",!1,!1,null,!0)},ft=z.prototype;ft.initialContext=function(){return[dt.b_stat]},ft.braceIsBlock=function(t){var e=this.curContext();return e===dt.f_expr||e===dt.f_stat||(t!==L.colon||e!==dt.b_stat&&e!==dt.b_expr?t===L._return||t===L.name&&this.exprAllowed?P.test(this.input.slice(this.lastTokEnd,this.start)):t===L._else||t===L.semi||t===L.eof||t===L.parenR||t===L.arrow||(t===L.braceL?e===dt.b_stat:t!==L._var&&t!==L._const&&t!==L.name&&!this.exprAllowed):!e.isExpr)},ft.inGeneratorContext=function(){for(var t=this.context.length-1;t>=1;t--){var e=this.context[t];if("function"===e.token)return e.generator}return!1},ft.updateContext=function(t){var e,i=this.type;i.keyword&&t===L.dot?this.exprAllowed=!1:(e=i.updateContext)?e.call(this,t):this.exprAllowed=i.beforeExpr},L.parenR.updateContext=L.braceR.updateContext=function(){if(1!==this.context.length){var t=this.context.pop();t===dt.b_stat&&"function"===this.curContext().token&&(t=this.context.pop()),this.exprAllowed=!t.isExpr}else this.exprAllowed=!0},L.braceL.updateContext=function(t){this.context.push(this.braceIsBlock(t)?dt.b_stat:dt.b_expr),this.exprAllowed=!0},L.dollarBraceL.updateContext=function(){this.context.push(dt.b_tmpl),this.exprAllowed=!0},L.parenL.updateContext=function(t){this.context.push(t===L._if||t===L._for||t===L._with||t===L._while?dt.p_stat:dt.p_expr),this.exprAllowed=!0},L.incDec.updateContext=function(){},L._function.updateContext=L._class.updateContext=function(t){!t.beforeExpr||t===L.semi||t===L._else||t===L._return&&P.test(this.input.slice(this.lastTokEnd,this.start))||(t===L.colon||t===L.braceL)&&this.curContext()===dt.b_stat?this.context.push(dt.f_stat):this.context.push(dt.f_expr),this.exprAllowed=!1},L.backQuote.updateContext=function(){this.curContext()===dt.q_tmpl?this.context.pop():this.context.push(dt.q_tmpl),this.exprAllowed=!1},L.star.updateContext=function(t){if(t===L._function){var e=this.context.length-1;this.context[e]=this.context[e]===dt.f_expr?dt.f_expr_gen:dt.f_gen}this.exprAllowed=!0},L.name.updateContext=function(t){var e=!1;this.options.ecmaVersion>=6&&t!==L.dot&&("of"===this.value&&!this.exprAllowed||"yield"===this.value&&this.inGeneratorContext())&&(e=!0),this.exprAllowed=e};var mt="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",yt={9:mt,10:mt+" Extended_Pictographic"},gt="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",vt="Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",xt={9:vt,10:vt+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd"},bt={};function _t(t){var e=bt[t]={binary:M(yt[t]+" "+gt),nonBinary:{General_Category:M(gt),Script:M(xt[t])}};e.nonBinary.Script_Extensions=e.nonBinary.Script,e.nonBinary.gc=e.nonBinary.General_Category,e.nonBinary.sc=e.nonBinary.Script,e.nonBinary.scx=e.nonBinary.Script_Extensions}_t(9),_t(10);var kt=z.prototype,St=function(t){this.parser=t,this.validFlags="gim"+(t.options.ecmaVersion>=6?"uy":"")+(t.options.ecmaVersion>=9?"s":""),this.unicodeProperties=bt[t.options.ecmaVersion>=10?10:t.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};function wt(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode(55296+(t>>10),56320+(1023&t)))}function Et(t){return 36===t||t>=40&&t<=43||46===t||63===t||t>=91&&t<=94||t>=123&&t<=125}function Ct(t){return t>=65&&t<=90||t>=97&&t<=122}function At(t){return Ct(t)||95===t}function It(t){return At(t)||Lt(t)}function Lt(t){return t>=48&&t<=57}function Pt(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function Nt(t){return t>=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t-48}function Ot(t){return t>=48&&t<=55}St.prototype.reset=function(t,e,i){var r=-1!==i.indexOf("u");this.start=0|t,this.source=e+"",this.flags=i,this.switchU=r&&this.parser.options.ecmaVersion>=6,this.switchN=r&&this.parser.options.ecmaVersion>=9},St.prototype.raise=function(t){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+t)},St.prototype.at=function(t){var e=this.source,i=e.length;if(t>=i)return-1;var r=e.charCodeAt(t);return!this.switchU||r<=55295||r>=57344||t+1>=i?r:(r<<10)+e.charCodeAt(t+1)-56613888},St.prototype.nextIndex=function(t){var e=this.source,i=e.length;if(t>=i)return i;var r=e.charCodeAt(t);return!this.switchU||r<=55295||r>=57344||t+1>=i?t+1:t+2},St.prototype.current=function(){return this.at(this.pos)},St.prototype.lookahead=function(){return this.at(this.nextIndex(this.pos))},St.prototype.advance=function(){this.pos=this.nextIndex(this.pos)},St.prototype.eat=function(t){return this.current()===t&&(this.advance(),!0)},kt.validateRegExpFlags=function(t){for(var e=t.validFlags,i=t.flags,r=0;r-1&&this.raise(t.start,"Duplicate regular expression flag")}},kt.validateRegExpPattern=function(t){this.regexp_pattern(t),!t.switchN&&this.options.ecmaVersion>=9&&t.groupNames.length>0&&(t.switchN=!0,this.regexp_pattern(t))},kt.regexp_pattern=function(t){t.pos=0,t.lastIntValue=0,t.lastStringValue="",t.lastAssertionIsQuantifiable=!1,t.numCapturingParens=0,t.maxBackReference=0,t.groupNames.length=0,t.backReferenceNames.length=0,this.regexp_disjunction(t),t.pos!==t.source.length&&(t.eat(41)&&t.raise("Unmatched ')'"),(t.eat(93)||t.eat(125))&&t.raise("Lone quantifier brackets")),t.maxBackReference>t.numCapturingParens&&t.raise("Invalid escape");for(var e=0,i=t.backReferenceNames;e=9&&(i=t.eat(60)),t.eat(61)||t.eat(33))return this.regexp_disjunction(t),t.eat(41)||t.raise("Unterminated group"),t.lastAssertionIsQuantifiable=!i,!0}return t.pos=e,!1},kt.regexp_eatQuantifier=function(t,e){return void 0===e&&(e=!1),!!this.regexp_eatQuantifierPrefix(t,e)&&(t.eat(63),!0)},kt.regexp_eatQuantifierPrefix=function(t,e){return t.eat(42)||t.eat(43)||t.eat(63)||this.regexp_eatBracedQuantifier(t,e)},kt.regexp_eatBracedQuantifier=function(t,e){var i=t.pos;if(t.eat(123)){var r=0,s=-1;if(this.regexp_eatDecimalDigits(t)&&(r=t.lastIntValue,t.eat(44)&&this.regexp_eatDecimalDigits(t)&&(s=t.lastIntValue),t.eat(125)))return-1!==s&&s=9?this.regexp_groupSpecifier(t):63===t.current()&&t.raise("Invalid group"),this.regexp_disjunction(t),t.eat(41))return t.numCapturingParens+=1,!0;t.raise("Unterminated group")}return!1},kt.regexp_eatExtendedAtom=function(t){return t.eat(46)||this.regexp_eatReverseSolidusAtomEscape(t)||this.regexp_eatCharacterClass(t)||this.regexp_eatUncapturingGroup(t)||this.regexp_eatCapturingGroup(t)||this.regexp_eatInvalidBracedQuantifier(t)||this.regexp_eatExtendedPatternCharacter(t)},kt.regexp_eatInvalidBracedQuantifier=function(t){return this.regexp_eatBracedQuantifier(t,!0)&&t.raise("Nothing to repeat"),!1},kt.regexp_eatSyntaxCharacter=function(t){var e=t.current();return!!Et(e)&&(t.lastIntValue=e,t.advance(),!0)},kt.regexp_eatPatternCharacters=function(t){for(var e=t.pos,i=0;-1!==(i=t.current())&&!Et(i);)t.advance();return t.pos!==e},kt.regexp_eatExtendedPatternCharacter=function(t){var e=t.current();return!(-1===e||36===e||e>=40&&e<=43||46===e||63===e||91===e||94===e||124===e||(t.advance(),0))},kt.regexp_groupSpecifier=function(t){if(t.eat(63)){if(this.regexp_eatGroupName(t))return-1!==t.groupNames.indexOf(t.lastStringValue)&&t.raise("Duplicate capture group name"),void t.groupNames.push(t.lastStringValue);t.raise("Invalid group")}},kt.regexp_eatGroupName=function(t){if(t.lastStringValue="",t.eat(60)){if(this.regexp_eatRegExpIdentifierName(t)&&t.eat(62))return!0;t.raise("Invalid capture group name")}return!1},kt.regexp_eatRegExpIdentifierName=function(t){if(t.lastStringValue="",this.regexp_eatRegExpIdentifierStart(t)){for(t.lastStringValue+=wt(t.lastIntValue);this.regexp_eatRegExpIdentifierPart(t);)t.lastStringValue+=wt(t.lastIntValue);return!0}return!1},kt.regexp_eatRegExpIdentifierStart=function(t){var e=t.pos,i=t.current();return t.advance(),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t)&&(i=t.lastIntValue),function(t){return _(t,!0)||36===t||95===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},kt.regexp_eatRegExpIdentifierPart=function(t){var e=t.pos,i=t.current();return t.advance(),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t)&&(i=t.lastIntValue),function(t){return k(t,!0)||36===t||95===t||8204===t||8205===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},kt.regexp_eatAtomEscape=function(t){return!!(this.regexp_eatBackReference(t)||this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)||t.switchN&&this.regexp_eatKGroupName(t))||(t.switchU&&(99===t.current()&&t.raise("Invalid unicode escape"),t.raise("Invalid escape")),!1)},kt.regexp_eatBackReference=function(t){var e=t.pos;if(this.regexp_eatDecimalEscape(t)){var i=t.lastIntValue;if(t.switchU)return i>t.maxBackReference&&(t.maxBackReference=i),!0;if(i<=t.numCapturingParens)return!0;t.pos=e}return!1},kt.regexp_eatKGroupName=function(t){if(t.eat(107)){if(this.regexp_eatGroupName(t))return t.backReferenceNames.push(t.lastStringValue),!0;t.raise("Invalid named reference")}return!1},kt.regexp_eatCharacterEscape=function(t){return this.regexp_eatControlEscape(t)||this.regexp_eatCControlLetter(t)||this.regexp_eatZero(t)||this.regexp_eatHexEscapeSequence(t)||this.regexp_eatRegExpUnicodeEscapeSequence(t)||!t.switchU&&this.regexp_eatLegacyOctalEscapeSequence(t)||this.regexp_eatIdentityEscape(t)},kt.regexp_eatCControlLetter=function(t){var e=t.pos;if(t.eat(99)){if(this.regexp_eatControlLetter(t))return!0;t.pos=e}return!1},kt.regexp_eatZero=function(t){return 48===t.current()&&!Lt(t.lookahead())&&(t.lastIntValue=0,t.advance(),!0)},kt.regexp_eatControlEscape=function(t){var e=t.current();return 116===e?(t.lastIntValue=9,t.advance(),!0):110===e?(t.lastIntValue=10,t.advance(),!0):118===e?(t.lastIntValue=11,t.advance(),!0):102===e?(t.lastIntValue=12,t.advance(),!0):114===e&&(t.lastIntValue=13,t.advance(),!0)},kt.regexp_eatControlLetter=function(t){var e=t.current();return!!Ct(e)&&(t.lastIntValue=e%32,t.advance(),!0)},kt.regexp_eatRegExpUnicodeEscapeSequence=function(t){var e,i=t.pos;if(t.eat(117)){if(this.regexp_eatFixedHexDigits(t,4)){var r=t.lastIntValue;if(t.switchU&&r>=55296&&r<=56319){var s=t.pos;if(t.eat(92)&&t.eat(117)&&this.regexp_eatFixedHexDigits(t,4)){var n=t.lastIntValue;if(n>=56320&&n<=57343)return t.lastIntValue=1024*(r-55296)+(n-56320)+65536,!0}t.pos=s,t.lastIntValue=r}return!0}if(t.switchU&&t.eat(123)&&this.regexp_eatHexDigits(t)&&t.eat(125)&&(e=t.lastIntValue)>=0&&e<=1114111)return!0;t.switchU&&t.raise("Invalid unicode escape"),t.pos=i}return!1},kt.regexp_eatIdentityEscape=function(t){if(t.switchU)return!!this.regexp_eatSyntaxCharacter(t)||!!t.eat(47)&&(t.lastIntValue=47,!0);var e=t.current();return!(99===e||t.switchN&&107===e||(t.lastIntValue=e,t.advance(),0))},kt.regexp_eatDecimalEscape=function(t){t.lastIntValue=0;var e=t.current();if(e>=49&&e<=57){do{t.lastIntValue=10*t.lastIntValue+(e-48),t.advance()}while((e=t.current())>=48&&e<=57);return!0}return!1},kt.regexp_eatCharacterClassEscape=function(t){var e=t.current();if(function(t){return 100===t||68===t||115===t||83===t||119===t||87===t}(e))return t.lastIntValue=-1,t.advance(),!0;if(t.switchU&&this.options.ecmaVersion>=9&&(80===e||112===e)){if(t.lastIntValue=-1,t.advance(),t.eat(123)&&this.regexp_eatUnicodePropertyValueExpression(t)&&t.eat(125))return!0;t.raise("Invalid property name")}return!1},kt.regexp_eatUnicodePropertyValueExpression=function(t){var e=t.pos;if(this.regexp_eatUnicodePropertyName(t)&&t.eat(61)){var i=t.lastStringValue;if(this.regexp_eatUnicodePropertyValue(t))return this.regexp_validateUnicodePropertyNameAndValue(t,i,t.lastStringValue),!0}return t.pos=e,!!this.regexp_eatLoneUnicodePropertyNameOrValue(t)&&(this.regexp_validateUnicodePropertyNameOrValue(t,t.lastStringValue),!0)},kt.regexp_validateUnicodePropertyNameAndValue=function(t,e,i){B(t.unicodeProperties.nonBinary,e)||t.raise("Invalid property name"),t.unicodeProperties.nonBinary[e].test(i)||t.raise("Invalid property value")},kt.regexp_validateUnicodePropertyNameOrValue=function(t,e){t.unicodeProperties.binary.test(e)||t.raise("Invalid property name")},kt.regexp_eatUnicodePropertyName=function(t){var e=0;for(t.lastStringValue="";At(e=t.current());)t.lastStringValue+=wt(e),t.advance();return""!==t.lastStringValue},kt.regexp_eatUnicodePropertyValue=function(t){var e=0;for(t.lastStringValue="";It(e=t.current());)t.lastStringValue+=wt(e),t.advance();return""!==t.lastStringValue},kt.regexp_eatLoneUnicodePropertyNameOrValue=function(t){return this.regexp_eatUnicodePropertyValue(t)},kt.regexp_eatCharacterClass=function(t){if(t.eat(91)){if(t.eat(94),this.regexp_classRanges(t),t.eat(93))return!0;t.raise("Unterminated character class")}return!1},kt.regexp_classRanges=function(t){for(;this.regexp_eatClassAtom(t);){var e=t.lastIntValue;if(t.eat(45)&&this.regexp_eatClassAtom(t)){var i=t.lastIntValue;!t.switchU||-1!==e&&-1!==i||t.raise("Invalid character class"),-1!==e&&-1!==i&&e>i&&t.raise("Range out of order in character class")}}},kt.regexp_eatClassAtom=function(t){var e=t.pos;if(t.eat(92)){if(this.regexp_eatClassEscape(t))return!0;if(t.switchU){var i=t.current();(99===i||Ot(i))&&t.raise("Invalid class escape"),t.raise("Invalid escape")}t.pos=e}var r=t.current();return 93!==r&&(t.lastIntValue=r,t.advance(),!0)},kt.regexp_eatClassEscape=function(t){var e=t.pos;if(t.eat(98))return t.lastIntValue=8,!0;if(t.switchU&&t.eat(45))return t.lastIntValue=45,!0;if(!t.switchU&&t.eat(99)){if(this.regexp_eatClassControlLetter(t))return!0;t.pos=e}return this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)},kt.regexp_eatClassControlLetter=function(t){var e=t.current();return!(!Lt(e)&&95!==e||(t.lastIntValue=e%32,t.advance(),0))},kt.regexp_eatHexEscapeSequence=function(t){var e=t.pos;if(t.eat(120)){if(this.regexp_eatFixedHexDigits(t,2))return!0;t.switchU&&t.raise("Invalid escape"),t.pos=e}return!1},kt.regexp_eatDecimalDigits=function(t){var e=t.pos,i=0;for(t.lastIntValue=0;Lt(i=t.current());)t.lastIntValue=10*t.lastIntValue+(i-48),t.advance();return t.pos!==e},kt.regexp_eatHexDigits=function(t){var e=t.pos,i=0;for(t.lastIntValue=0;Pt(i=t.current());)t.lastIntValue=16*t.lastIntValue+Nt(i),t.advance();return t.pos!==e},kt.regexp_eatLegacyOctalEscapeSequence=function(t){if(this.regexp_eatOctalDigit(t)){var e=t.lastIntValue;if(this.regexp_eatOctalDigit(t)){var i=t.lastIntValue;t.lastIntValue=e<=3&&this.regexp_eatOctalDigit(t)?64*e+8*i+t.lastIntValue:8*e+i}else t.lastIntValue=e;return!0}return!1},kt.regexp_eatOctalDigit=function(t){var e=t.current();return Ot(e)?(t.lastIntValue=e-48,t.advance(),!0):(t.lastIntValue=0,!1)},kt.regexp_eatFixedHexDigits=function(t,e){var i=t.pos;t.lastIntValue=0;for(var r=0;r>10),56320+(1023&t)))}Tt.next=function(){this.options.onToken&&this.options.onToken(new jt(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},Tt.getToken=function(){return this.next(),new jt(this)},"undefined"!=typeof Symbol&&(Tt[Symbol.iterator]=function(){var t=this;return{next:function(){var e=t.getToken();return{done:e.type===L.eof,value:e}}}}),Tt.curContext=function(){return this.context[this.context.length-1]},Tt.nextToken=function(){var t=this.curContext();return t&&t.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(L.eof):t.override?t.override(this):void this.readToken(this.fullCharCodeAtPos())},Tt.readToken=function(t){return _(t,this.options.ecmaVersion>=6)||92===t?this.readWord():this.getTokenFromCode(t)},Tt.fullCharCodeAtPos=function(){var t=this.input.charCodeAt(this.pos);return t<=55295||t>=57344?t:(t<<10)+this.input.charCodeAt(this.pos+1)-56613888},Tt.skipBlockComment=function(){var t,e=this.options.onComment&&this.curPosition(),i=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(-1===r&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(N.lastIndex=i;(t=N.exec(this.input))&&t.index8&&t<14||t>=5760&&j.test(String.fromCharCode(t))))break t;++this.pos}}},Tt.finishToken=function(t,e){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var i=this.type;this.type=t,this.value=e,this.updateContext(i)},Tt.readToken_dot=function(){var t=this.input.charCodeAt(this.pos+1);if(t>=48&&t<=57)return this.readNumber(!0);var e=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===t&&46===e?(this.pos+=3,this.finishToken(L.ellipsis)):(++this.pos,this.finishToken(L.dot))},Tt.readToken_slash=function(){var t=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===t?this.finishOp(L.assign,2):this.finishOp(L.slash,1)},Tt.readToken_mult_modulo_exp=function(t){var e=this.input.charCodeAt(this.pos+1),i=1,r=42===t?L.star:L.modulo;return this.options.ecmaVersion>=7&&42===t&&42===e&&(++i,r=L.starstar,e=this.input.charCodeAt(this.pos+2)),61===e?this.finishOp(L.assign,i+1):this.finishOp(r,i)},Tt.readToken_pipe_amp=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?this.finishOp(124===t?L.logicalOR:L.logicalAND,2):61===e?this.finishOp(L.assign,2):this.finishOp(124===t?L.bitwiseOR:L.bitwiseAND,1)},Tt.readToken_caret=function(){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(L.assign,2):this.finishOp(L.bitwiseXOR,1)},Tt.readToken_plus_min=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?45!==e||this.inModule||62!==this.input.charCodeAt(this.pos+2)||0!==this.lastTokEnd&&!P.test(this.input.slice(this.lastTokEnd,this.pos))?this.finishOp(L.incDec,2):(this.skipLineComment(3),this.skipSpace(),this.nextToken()):61===e?this.finishOp(L.assign,2):this.finishOp(L.plusMin,1)},Tt.readToken_lt_gt=function(t){var e=this.input.charCodeAt(this.pos+1),i=1;return e===t?(i=62===t&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+i)?this.finishOp(L.assign,i+1):this.finishOp(L.bitShift,i)):33!==e||60!==t||this.inModule||45!==this.input.charCodeAt(this.pos+2)||45!==this.input.charCodeAt(this.pos+3)?(61===e&&(i=2),this.finishOp(L.relational,i)):(this.skipLineComment(4),this.skipSpace(),this.nextToken())},Tt.readToken_eq_excl=function(t){var e=this.input.charCodeAt(this.pos+1);return 61===e?this.finishOp(L.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===t&&62===e&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(L.arrow)):this.finishOp(61===t?L.eq:L.prefix,1)},Tt.getTokenFromCode=function(t){switch(t){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(L.parenL);case 41:return++this.pos,this.finishToken(L.parenR);case 59:return++this.pos,this.finishToken(L.semi);case 44:return++this.pos,this.finishToken(L.comma);case 91:return++this.pos,this.finishToken(L.bracketL);case 93:return++this.pos,this.finishToken(L.bracketR);case 123:return++this.pos,this.finishToken(L.braceL);case 125:return++this.pos,this.finishToken(L.braceR);case 58:return++this.pos,this.finishToken(L.colon);case 63:return++this.pos,this.finishToken(L.question);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(L.backQuote);case 48:var e=this.input.charCodeAt(this.pos+1);if(120===e||88===e)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===e||79===e)return this.readRadixNumber(8);if(98===e||66===e)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(t);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(t);case 124:case 38:return this.readToken_pipe_amp(t);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(t);case 60:case 62:return this.readToken_lt_gt(t);case 61:case 33:return this.readToken_eq_excl(t);case 126:return this.finishOp(L.prefix,1)}this.raise(this.pos,"Unexpected character '"+Rt(t)+"'")},Tt.finishOp=function(t,e){var i=this.input.slice(this.pos,this.pos+e);return this.pos+=e,this.finishToken(t,i)},Tt.readRegexp=function(){for(var t,e,i=this.pos;;){this.pos>=this.input.length&&this.raise(i,"Unterminated regular expression");var r=this.input.charAt(this.pos);if(P.test(r)&&this.raise(i,"Unterminated regular expression"),t)t=!1;else{if("["===r)e=!0;else if("]"===r&&e)e=!1;else if("/"===r&&!e)break;t="\\"===r}++this.pos}var s=this.input.slice(i,this.pos);++this.pos;var n=this.pos,a=this.readWord1();this.containsEsc&&this.unexpected(n);var o=this.regexpState||(this.regexpState=new St(this));o.reset(i,s,a),this.validateRegExpFlags(o),this.validateRegExpPattern(o);var p=null;try{p=new RegExp(s,a)}catch(t){}return this.finishToken(L.regexp,{pattern:s,flags:a,value:p})},Tt.readInt=function(t,e){for(var i=this.pos,r=0,s=0,n=null==e?1/0:e;s=97?o-97+10:o>=65?o-65+10:o>=48&&o<=57?o-48:1/0)>=t)break;++this.pos,r=r*t+a}return this.pos===i||null!=e&&this.pos-i!==e?null:r},Tt.readRadixNumber=function(t){this.pos+=2;var e=this.readInt(t);return null==e&&this.raise(this.start+2,"Expected number in radix "+t),_(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(L.num,e)},Tt.readNumber=function(t){var e=this.pos;t||null!==this.readInt(10)||this.raise(e,"Invalid number");var i=this.pos-e>=2&&48===this.input.charCodeAt(e);i&&this.strict&&this.raise(e,"Invalid number"),i&&/[89]/.test(this.input.slice(e,this.pos))&&(i=!1);var r=this.input.charCodeAt(this.pos);46!==r||i||(++this.pos,this.readInt(10),r=this.input.charCodeAt(this.pos)),69!==r&&101!==r||i||(43!==(r=this.input.charCodeAt(++this.pos))&&45!==r||++this.pos,null===this.readInt(10)&&this.raise(e,"Invalid number")),_(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var s=this.input.slice(e,this.pos),n=i?parseInt(s,8):parseFloat(s);return this.finishToken(L.num,n)},Tt.readCodePoint=function(){var t;if(123===this.input.charCodeAt(this.pos)){this.options.ecmaVersion<6&&this.unexpected();var e=++this.pos;t=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,t>1114111&&this.invalidStringToken(e,"Code point out of bounds")}else t=this.readHexChar(4);return t},Tt.readString=function(t){for(var e="",i=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var r=this.input.charCodeAt(this.pos);if(r===t)break;92===r?(e+=this.input.slice(i,this.pos),e+=this.readEscapedChar(!1),i=this.pos):(O(r,this.options.ecmaVersion>=10)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return e+=this.input.slice(i,this.pos++),this.finishToken(L.string,e)};var Vt={};Tt.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(c){if(c!==Vt)throw c;this.readInvalidTemplateToken()}this.inTemplateElement=!1},Tt.invalidStringToken=function(t,e){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw Vt;this.raise(t,e)},Tt.readTmplToken=function(){for(var t="",e=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var i=this.input.charCodeAt(this.pos);if(96===i||36===i&&123===this.input.charCodeAt(this.pos+1))return this.pos!==this.start||this.type!==L.template&&this.type!==L.invalidTemplate?(t+=this.input.slice(e,this.pos),this.finishToken(L.template,t)):36===i?(this.pos+=2,this.finishToken(L.dollarBraceL)):(++this.pos,this.finishToken(L.backQuote));if(92===i)t+=this.input.slice(e,this.pos),t+=this.readEscapedChar(!0),e=this.pos;else if(O(i)){switch(t+=this.input.slice(e,this.pos),++this.pos,i){case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:t+="\n";break;default:t+=String.fromCharCode(i)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),e=this.pos}else++this.pos}},Tt.readInvalidTemplateToken=function(){for(;this.pos=48&&e<=55){var i=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],r=parseInt(i,8);return r>255&&(i=i.slice(0,-1),r=parseInt(i,8)),this.pos+=i.length-1,e=this.input.charCodeAt(this.pos),"0"===i&&56!==e&&57!==e||!this.strict&&!t||this.invalidStringToken(this.pos-1-i.length,t?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(r)}return O(e)?"":String.fromCharCode(e)}},Tt.readHexChar=function(t){var e=this.pos,i=this.readInt(16,t);return null===i&&this.invalidStringToken(e,"Bad character escape sequence"),i},Tt.readWord1=function(){this.containsEsc=!1;for(var t="",e=!0,i=this.pos,r=this.options.ecmaVersion>=6;this.pos",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},Bt={version:"6.1.1",parse:function(t,e){return z.parse(t,e)},parseExpressionAt:function(t,e,i){return z.parseExpressionAt(t,e,i)},tokenizer:function(t,e){return z.tokenizer(t,e)},Parser:z,defaultOptions:X,Position:U,SourceLocation:q,getLineInfo:J,Node:ht,TokenType:S,tokTypes:L,keywordTypes:A,TokContext:ut,tokContexts:dt,isIdentifierChar:k,isIdentifierStart:_,Token:jt,isNewLine:O,lineBreak:P,lineBreakG:N,nonASCIIwhitespace:j},Ft=/^[\da-fA-F]+$/,Mt=/^\d+$/,Ut=Bt.tokTypes,qt=Bt.TokContext,Jt=Bt.tokContexts,Xt=Bt.TokenType,Wt=Bt.isNewLine,zt=Bt.isIdentifierStart,Ht=Bt.isIdentifierChar,Gt=new qt("...",!0,!0),$t={jsxName:new Xt("jsxName"),jsxText:new Xt("jsxText",{beforeExpr:!0}),jsxTagStart:new Xt("jsxTagStart"),jsxTagEnd:new Xt("jsxTagEnd")};function Yt(t){return t?"JSXIdentifier"===t.type?t.name:"JSXNamespacedName"===t.type?t.namespace.name+":"+t.name.name:"JSXMemberExpression"===t.type?Yt(t.object)+"."+Yt(t.property):void 0:t}$t.jsxTagStart.updateContext=function(){this.context.push(Kt),this.context.push(Gt),this.exprAllowed=!1},$t.jsxTagEnd.updateContext=function(t){var e=this.context.pop();e===Gt&&t===Ut.slash||e===Qt?(this.context.pop(),this.exprAllowed=this.curContext()===Kt):this.exprAllowed=!0};var Zt=function(t){return t=t||{},function(e){return function(t,e){return function(e){Object(a.a)(o,e);var i=h(o);function o(){return Object(r.a)(this,o),i.apply(this,arguments)}return Object(s.a)(o,[{key:"jsx_readToken",value:function(){for(var t="",e=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated JSX contents");var i=this.input.charCodeAt(this.pos);switch(i){case 60:case 123:return this.pos===this.start?60===i&&this.exprAllowed?(++this.pos,this.finishToken($t.jsxTagStart)):this.getTokenFromCode(i):(t+=this.input.slice(e,this.pos),this.finishToken($t.jsxText,t));case 38:t+=this.input.slice(e,this.pos),t+=this.jsx_readEntity(),e=this.pos;break;default:Wt(i)?(t+=this.input.slice(e,this.pos),t+=this.jsx_readNewLine(!0),e=this.pos):++this.pos}}}},{key:"jsx_readNewLine",value:function(t){var e,i=this.input.charCodeAt(this.pos);return++this.pos,13===i&&10===this.input.charCodeAt(this.pos)?(++this.pos,e=t?"\n":"\r\n"):e=String.fromCharCode(i),this.options.locations&&(++this.curLine,this.lineStart=this.pos),e}},{key:"jsx_readString",value:function(t){for(var e="",i=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var r=this.input.charCodeAt(this.pos);if(r===t)break;38===r?(e+=this.input.slice(i,this.pos),e+=this.jsx_readEntity(),i=this.pos):Wt(r)?(e+=this.input.slice(i,this.pos),e+=this.jsx_readNewLine(!1),i=this.pos):++this.pos}return e+=this.input.slice(i,this.pos++),this.finishToken(Ut.string,e)}},{key:"jsx_readEntity",value:function(){var t,e="",i=0,r=this.input[this.pos];"&"!==r&&this.raise(this.pos,"Entity must start with an ampersand");for(var s=++this.pos;this.pos")}var a=s.name?"Element":"Fragment";return i["opening"+a]=s,i["closing"+a]=n,i.children=r,this.type===Ut.relational&&"<"===this.value&&this.raise(this.start,"Adjacent JSX elements must be wrapped in an enclosing tag"),this.finishNode(i,"JSX"+a)}},{key:"jsx_parseText",value:function(t){var e=this.parseLiteral(t);return e.type="JSXText",e}},{key:"jsx_parseElement",value:function(){var t=this.start,e=this.startLoc;return this.next(),this.jsx_parseElementAt(t,e)}},{key:"parseExprAtom",value:function(t){return this.type===$t.jsxText?this.jsx_parseText(this.value):this.type===$t.jsxTagStart?this.jsx_parseElement():Object(n.a)(Object(p.a)(o.prototype),"parseExprAtom",this).call(this,t)}},{key:"readToken",value:function(t){var e=this.curContext();if(e===Kt)return this.jsx_readToken();if(e===Gt||e===Qt){if(zt(t))return this.jsx_readWord();if(62==t)return++this.pos,this.finishToken($t.jsxTagEnd);if((34===t||39===t)&&e==Gt)return this.jsx_readString(t)}return 60===t&&this.exprAllowed&&33!==this.input.charCodeAt(this.pos+1)?(++this.pos,this.finishToken($t.jsxTagStart)):Object(n.a)(Object(p.a)(o.prototype),"readToken",this).call(this,t)}},{key:"updateContext",value:function(t){if(this.type==Ut.braceL){var e=this.curContext();e==Gt?this.context.push(Jt.b_expr):e==Kt?this.context.push(Jt.b_tmpl):Object(n.a)(Object(p.a)(o.prototype),"updateContext",this).call(this,t),this.exprAllowed=!0}else{if(this.type!==Ut.slash||t!==$t.jsxTagStart)return Object(n.a)(Object(p.a)(o.prototype),"updateContext",this).call(this,t);this.context.length-=2,this.context.push(Qt),this.exprAllowed=!1}}}]),o}(e)}({allowNamespaces:!1!==t.allowNamespaces,allowNamespacedObjects:!!t.allowNamespacedObjects},e)}};Zt.tokTypes=$t;var te,ee,ie=(function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.DynamicImportKey=void 0;var i=function(){function t(t,e){for(var i=0;i>=5)>0&&(i|=32),e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="[i]}while(t>0);return e}var he=function(t,e,i){this.start=t,this.end=e,this.original=i,this.intro="",this.outro="",this.content=i,this.storeName=!1,this.edited=!1,Object.defineProperties(this,{previous:{writable:!0,value:null},next:{writable:!0,value:null}})};he.prototype.appendLeft=function(t){this.outro+=t},he.prototype.appendRight=function(t){this.intro=this.intro+t},he.prototype.clone=function(){var t=new he(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t},he.prototype.contains=function(t){return this.start0&&(n+=";"),0!==o.length){for(var p=0,h=[],c=0,l=o;c1&&(d+=pe(u[1]-e)+pe(u[2]-i)+pe(u[3]-r),e=u[1],i=u[2],r=u[3]),5===u.length&&(d+=pe(u[4]-s),s=u[4]),h.push(d)}n+=h.join(",")}}return n}(t.mappings)};function ue(t){var e=t.split("\n"),i=e.filter((function(t){return/^\t+/.test(t)})),r=e.filter((function(t){return/^ {2,}/.test(t)}));if(0===i.length&&0===r.length)return null;if(i.length>=r.length)return"\t";var s=r.reduce((function(t,e){var i=/^ +/.exec(e)[0].length;return Math.min(i,t)}),1/0);return new Array(s+1).join(" ")}function de(t,e){var i=t.split(/[\/\\]/),r=e.split(/[\/\\]/);for(i.pop();i[0]===r[0];)i.shift(),r.shift();if(i.length)for(var s=i.length;s--;)i[s]="..";return i.concat(r).join("/")}le.prototype.toString=function(){return JSON.stringify(this)},le.prototype.toUrl=function(){return"data:application/json;charset=utf-8;base64,"+ce(this.toString())};var fe=Object.prototype.toString;function me(t){for(var e=t.split("\n"),i=[],r=0,s=0;r>1;t=0&&s.push(r),this.rawSegments.push(s)}else this.pending&&this.rawSegments.push(this.pending);this.advance(e),this.pending=null},ye.prototype.addUneditedChunk=function(t,e,i,r,s){for(var n=e.start,a=!0;n1){for(var i=0;i=t&&i<=e)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(e),this._split(i);var r=this.byStart[t],s=this.byEnd[e],n=r.previous,a=s.next,o=this.byStart[i];if(!o&&s===this.lastChunk)return this;var p=o?o.previous:this.lastChunk;return n&&(n.next=a),a&&(a.previous=n),p&&(p.next=r),o&&(o.previous=s),r.previous||(this.firstChunk=s.next),s.next||(this.lastChunk=r.previous,this.lastChunk.next=null),r.previous=p,s.next=o||null,p||(this.firstChunk=r),o||(this.lastChunk=s),this},ve.prototype.overwrite=function(t,e,i,r){if("string"!=typeof i)throw new TypeError("replacement content must be a string");for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length;if(e>this.original.length)throw new Error("end is out of bounds");if(t===e)throw new Error("Cannot overwrite a zero-length range – use appendLeft or prependRight instead");this._split(t),this._split(e),!0===r&&(ge.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),ge.storeName=!0),r={storeName:!0});var s=void 0!==r&&r.storeName,n=void 0!==r&&r.contentOnly;if(s){var a=this.original.slice(t,e);this.storedNames[a]=!0}var o=this.byStart[t],p=this.byEnd[e];if(o){if(e>o.end&&o.next!==this.byStart[o.end])throw new Error("Cannot overwrite across a split point");if(o.edit(i,s,n),o!==p){for(var h=o.next;h!==p;)h.edit("",!1),h=h.next;h.edit("",!1)}}else{var c=new he(t,e,"").edit(i,s);p.next=c,c.previous=p}return this},ve.prototype.prepend=function(t){if("string"!=typeof t)throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this},ve.prototype.prependLeft=function(t,e){if("string"!=typeof e)throw new TypeError("inserted content must be a string");this._split(t);var i=this.byEnd[t];return i?i.prependLeft(e):this.intro=e+this.intro,this},ve.prototype.prependRight=function(t,e){if("string"!=typeof e)throw new TypeError("inserted content must be a string");this._split(t);var i=this.byStart[t];return i?i.prependRight(e):this.outro=e+this.outro,this},ve.prototype.remove=function(t,e){for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length;if(t===e)return this;if(t<0||e>this.original.length)throw new Error("Character is out of bounds");if(t>e)throw new Error("end must be greater than start");this._split(t),this._split(e);for(var i=this.byStart[t];i;)i.intro="",i.outro="",i.edit(""),i=e>i.end?this.byStart[i.end]:null;return this},ve.prototype.lastChar=function(){if(this.outro.length)return this.outro[this.outro.length-1];var t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""},ve.prototype.lastLine=function(){var t=this.outro.lastIndexOf("\n");if(-1!==t)return this.outro.substr(t+1);var e=this.outro,i=this.lastChunk;do{if(i.outro.length>0){if(-1!==(t=i.outro.lastIndexOf("\n")))return i.outro.substr(t+1)+e;e=i.outro+e}if(i.content.length>0){if(-1!==(t=i.content.lastIndexOf("\n")))return i.content.substr(t+1)+e;e=i.content+e}if(i.intro.length>0){if(-1!==(t=i.intro.lastIndexOf("\n")))return i.intro.substr(t+1)+e;e=i.intro+e}}while(i=i.previous);return-1!==(t=this.intro.lastIndexOf("\n"))?this.intro.substr(t+1)+e:this.intro+e},ve.prototype.slice=function(t,e){for(void 0===t&&(t=0),void 0===e&&(e=this.original.length);t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length;for(var i="",r=this.firstChunk;r&&(r.start>t||r.end<=t);){if(r.start=e)return i;r=r.next}if(r&&r.edited&&r.start!==t)throw new Error("Cannot use replaced character "+t+" as slice start anchor.");for(var s=r;r;){!r.intro||s===r&&r.start!==t||(i+=r.intro);var n=r.start=e;if(n&&r.edited&&r.end!==e)throw new Error("Cannot use replaced character "+e+" as slice end anchor.");if(i+=r.content.slice(s===r?t-r.start:0,n?r.content.length+e-r.end:r.content.length),!r.outro||n&&r.end!==e||(i+=r.outro),n)break;r=r.next}return i},ve.prototype.snip=function(t,e){var i=this.clone();return i.remove(0,t),i.remove(e,i.original.length),i},ve.prototype._split=function(t){if(!this.byStart[t]&&!this.byEnd[t])for(var e=this.lastSearchedChunk,i=t>e.end;e;){if(e.contains(t))return this._splitChunk(e,t);e=i?this.byStart[e.end]:this.byEnd[e.start]}},ve.prototype._splitChunk=function(t,e){if(t.edited&&t.content.length){var i=me(this.original)(e);throw new Error("Cannot split a chunk that has already been edited ("+i.line+":"+i.column+' – "'+t.original+'")')}var r=t.split(e);return this.byEnd[e]=t,this.byStart[e]=r,this.byEnd[r.end]=r,t===this.lastChunk&&(this.lastChunk=r),this.lastSearchedChunk=t,!0},ve.prototype.toString=function(){for(var t=this.intro,e=this.firstChunk;e;)t+=e.toString(),e=e.next;return t+this.outro},ve.prototype.isEmpty=function(){var t=this.firstChunk;do{if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1}while(t=t.next);return!0},ve.prototype.length=function(){var t=this.firstChunk,e=0;do{e+=t.intro.length+t.content.length+t.outro.length}while(t=t.next);return e},ve.prototype.trimLines=function(){return this.trim("[\\r\\n]")},ve.prototype.trim=function(t){return this.trimStart(t).trimEnd(t)},ve.prototype.trimEndAborted=function(t){var e=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(e,""),this.outro.length)return!0;var i=this.lastChunk;do{var r=i.end,s=i.trimEnd(e);if(i.end!==r&&(this.lastChunk===i&&(this.lastChunk=i.next),this.byEnd[i.end]=i,this.byStart[i.next.start]=i.next,this.byEnd[i.next.end]=i.next),s)return!0;i=i.previous}while(i);return!1},ve.prototype.trimEnd=function(t){return this.trimEndAborted(t),this},ve.prototype.trimStartAborted=function(t){var e=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(e,""),this.intro.length)return!0;var i=this.firstChunk;do{var r=i.end,s=i.trimStart(e);if(i.end!==r&&(i===this.lastChunk&&(this.lastChunk=i.next),this.byEnd[i.end]=i,this.byStart[i.next.start]=i.next,this.byEnd[i.next.end]=i.next),s)return!0;i=i.next}while(i);return!1},ve.prototype.trimStart=function(t){return this.trimStartAborted(t),this};var be=function(){};function _e(t){var e=[];return ke[t.type](e,t),e}be.prototype.ancestor=function(t){for(var e=this;t--;)if(!(e=e.parent))return null;return e},be.prototype.contains=function(t){for(;t;){if(t===this)return!0;t=t.parent}return!1},be.prototype.findLexicalBoundary=function(){return this.parent.findLexicalBoundary()},be.prototype.findNearest=function(t){return"string"==typeof t&&(t=new RegExp("^"+t+"$")),t.test(this.type)?this:this.parent.findNearest(t)},be.prototype.unparenthesizedParent=function(){for(var t=this.parent;t&&"ParenthesizedExpression"===t.type;)t=t.parent;return t},be.prototype.unparenthesize=function(){for(var t=this;"ParenthesizedExpression"===t.type;)t=t.expression;return t},be.prototype.findScope=function(t){return this.parent.findScope(t)},be.prototype.getIndentation=function(){return this.parent.getIndentation()},be.prototype.initialise=function(t){for(var e=0,i=this.keys;ee)return{line:i+1,column:e-n,char:i};n=a}throw new Error("Could not determine location of character")}(r,i.start);this.message=e+" ("+s.line+":"+s.column+")",this.stack=(new t).stack.replace(new RegExp(".+new "+this.name+".+\\n","m"),""),this.loc=s,this.snippet=Ce(r,s,i.end-i.start)}}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.toString=function(){return this.name+": "+this.message+"\n"+this.snippet},e.missingTransform=function(t,i,r,s){throw void 0===s&&(s=null),new e("Transforming "+t+" is not "+(s?"fully supported":"implemented")+". Use `transforms: { "+i+": false }` to skip transformation and disable this error"+(s?", or `transforms: { "+s+": true }` if you know what you're doing":"")+".",r)},e}(Error);function Ie(t,e){for(var i=0;i1&&(c=e(n),o.push((function(e,i,o){t.prependRight(s.start,(a?"":i+"var ")+c+" = "),t.overwrite(s.start,r=s.start+1,n),t.appendLeft(r,o),t.overwrite(s.start,r=s.start+1,(a?"":i+"var ")+c+" = "+n+o),t.move(s.start,r,e)}))),Oe(t,e,i,s,c,a,o);break;case"ArrayPattern":if(t.remove(r,r=s.start),s.elements.filter(Boolean).length>1){var l=e(n);o.push((function(e,i,o){t.prependRight(s.start,(a?"":i+"var ")+l+" = "),t.overwrite(s.start,r=s.start+1,n,{contentOnly:!0}),t.appendLeft(r,o),t.move(s.start,r,e)})),s.elements.forEach((function(s,n){s&&("RestElement"===s.type?je(t,e,i,r,s.argument,l+".slice("+n+")",a,o):je(t,e,i,r,s,l+"["+n+"]",a,o),r=s.end)}))}else{var u=Ie(s.elements,Boolean),d=s.elements[u];"RestElement"===d.type?je(t,e,i,r,d.argument,n+".slice("+u+")",a,o):je(t,e,i,r,d,n+"["+u+"]",a,o),r=d.end}t.remove(r,s.end);break;default:throw new Error("Unexpected node type in destructuring ("+s.type+")")}}var Te=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.createScope=function(){var t=this;this.parentIsFunction=/Function/.test(this.parent.type),this.isFunctionBlock=this.parentIsFunction||"Root"===this.parent.type,this.scope=new we({block:!this.isFunctionBlock,parent:this.parent.findScope(!1),declare:function(e){return t.createdDeclarations.push(e)}}),this.parentIsFunction&&this.parent.params.forEach((function(e){t.scope.addDeclaration(e,"param")}))},e.prototype.initialise=function(t){this.thisAlias=null,this.argumentsAlias=null,this.defaultParameters=[],this.createdDeclarations=[],this.scope||this.createScope(),this.body.forEach((function(e){return e.initialise(t)})),this.scope.consolidate()},e.prototype.findLexicalBoundary=function(){return"Program"===this.type||/^Function/.test(this.parent.type)?this:this.parent.findLexicalBoundary()},e.prototype.findScope=function(t){return t&&!this.isFunctionBlock?this.parent.findScope(t):this.scope},e.prototype.getArgumentsAlias=function(){return this.argumentsAlias||(this.argumentsAlias=this.scope.createIdentifier("arguments")),this.argumentsAlias},e.prototype.getArgumentsArrayAlias=function(){return this.argumentsArrayAlias||(this.argumentsArrayAlias=this.scope.createIdentifier("argsArray")),this.argumentsArrayAlias},e.prototype.getThisAlias=function(){return this.thisAlias||(this.thisAlias=this.scope.createIdentifier("this")),this.thisAlias},e.prototype.getIndentation=function(){if(void 0===this.indentation){for(var t=this.program.magicString.original,e=this.synthetic||!this.body.length,i=e?this.start:this.body[0].start;i&&"\n"!==t[i];)i-=1;for(this.indentation="";;){var r=t[i+=1];if(" "!==r&&"\t"!==r)break;this.indentation+=r}for(var s=this.program.magicString.getIndentString(),n=this.parent;n;)"constructor"!==n.kind||n.parent.parent.superClass||(this.indentation=this.indentation.replace(s,"")),n=n.parent;e&&(this.indentation+=s)}return this.indentation},e.prototype.transpile=function(e,i){var r,s,n=this,a=this.getIndentation(),o=[];if(this.argumentsAlias&&o.push((function(t,i,r){e.appendLeft(t,i+"var "+n.argumentsAlias+" = arguments"+r)})),this.thisAlias&&o.push((function(t,i,r){e.appendLeft(t,i+"var "+n.thisAlias+" = this"+r)})),this.argumentsArrayAlias&&o.push((function(t,i,r){var s=n.scope.createIdentifier("i");e.appendLeft(t,i+"var "+s+" = arguments.length, "+n.argumentsArrayAlias+" = Array("+s+");\n"+a+"while ( "+s+"-- ) "+n.argumentsArrayAlias+"["+s+"] = arguments["+s+"]"+r)})),/Function/.test(this.parent.type)?this.transpileParameters(this.parent.params,e,i,a,o):"CatchClause"===this.parent.type&&this.transpileParameters([this.parent.param],e,i,a,o),i.letConst&&this.isFunctionBlock&&this.transpileBlockScopedIdentifiers(e),t.prototype.transpile.call(this,e,i),this.createdDeclarations.length&&o.push((function(t,i,r){var s=i+"var "+n.createdDeclarations.join(", ")+r;e.appendLeft(t,s)})),this.synthetic)if("ArrowFunctionExpression"===this.parent.type){var p=this.body[0];o.length?(e.appendLeft(this.start,"{").prependRight(this.end,this.parent.getIndentation()+"}"),e.prependRight(p.start,"\n"+a+"return "),e.appendLeft(p.end,";\n")):i.arrow&&(e.prependRight(p.start,"{ return "),e.appendLeft(p.end,"; }"))}else o.length&&e.prependRight(this.start,"{").appendLeft(this.end,"}");r=(s=this.body[0])&&"ExpressionStatement"===s.type&&"Literal"===s.expression.type&&"use strict"===s.expression.value?this.body[0].end:this.synthetic||"Root"===this.parent.type?this.start:this.start+1;var h="\n"+a,c=";";o.forEach((function(t,e){e===o.length-1&&(c=";\n"),t(r,h,c)}))},e.prototype.transpileParameters=function(t,e,i,r,s){var n=this;t.forEach((function(a){if("AssignmentPattern"===a.type&&"Identifier"===a.left.type)i.defaultParameter&&s.push((function(t,i,r){e.prependRight(a.left.end,i+"if ( "+a.left.name+" === void 0 ) "+a.left.name).move(a.left.end,a.right.end,t).appendLeft(a.right.end,r)}));else if("RestElement"===a.type)i.spreadRest&&s.push((function(i,s,o){var p=t[t.length-2];if(p)e.remove(p?p.end:a.start,a.end);else{for(var h=a.start,c=a.end;/\s/.test(e.original[h-1]);)h-=1;for(;/\s/.test(e.original[c]);)c+=1;e.remove(h,c)}var l=a.argument.name,u=n.scope.createIdentifier("len"),d=t.length-1;e.prependRight(i,d?s+"var "+l+" = [], "+u+" = arguments.length - "+d+";\n"+r+"while ( "+u+"-- > 0 ) "+l+"[ "+u+" ] = arguments[ "+u+" + "+d+" ]"+o:s+"var "+l+" = [], "+u+" = arguments.length;\n"+r+"while ( "+u+"-- ) "+l+"[ "+u+" ] = arguments[ "+u+" ]"+o)}));else if("Identifier"!==a.type&&i.parameterDestructuring){var o=n.scope.createIdentifier("ref");Pe(e,(function(t){return n.scope.createIdentifier(t)}),(function(t){return n.scope.resolveName(t.name)}),a,o,!1,s),e.prependRight(a.start,o)}}))},e.prototype.transpileBlockScopedIdentifiers=function(t){var e=this;Object.keys(this.scope.blockScopedDeclarations).forEach((function(i){for(var r=0,s=e.scope.blockScopedDeclarations[i];rthis.start?e.overwrite(this.start,o,h):e.prependRight(this.start,h)}else t.prototype.transpile.call(this,e,i);i.trailingFunctionCommas&&this.params.length&&!n&&Me(e,this.params[this.params.length-1].end)},e.prototype.needsArguments=function(t){return t.spreadRest&&this.params.filter((function(t){return"RestElement"===t.type})).length>0},e}(be);function qe(t,e){var i=e.findDeclaration(t.name);if(i&&"const"===i.kind)throw new Ae(t.name+" is read-only",t)}var Je=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if("Identifier"===this.left.type){var i=this.findScope(!1).findDeclaration(this.left.name),r=i&&i.node.ancestor(3);r&&"ForStatement"===r.type&&r.body.contains(this)&&(r.reassigned[this.left.name]=!0)}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){"Identifier"===this.left.type&&qe(this.left,this.findScope(!1)),"**="===this.operator&&i.exponentiation?this.transpileExponentiation(e,i):/Pattern/.test(this.left.type)&&i.destructuring&&this.transpileDestructuring(e),t.prototype.transpile.call(this,e,i)},e.prototype.transpileDestructuring=function(t){var e=this,i=this.findScope(!0),r=this.findScope(!1),s=i.createDeclaration("assign");t.appendRight(this.left.end,"("+s),t.appendLeft(this.right.end,", ");var n=[];Pe(t,(function(t){return i.createDeclaration(t)}),(function(t){var e=r.resolveName(t.name);return qe(t,r),e}),this.left,s,!0,n);var a=", ";n.forEach((function(t,i){i===n.length-1&&(a=""),t(e.end,"",a)})),"ExpressionStatement"===this.unparenthesizedParent().type?t.prependRight(this.end,")"):t.appendRight(this.end,", "+s+")")},e.prototype.transpileExponentiation=function(t){for(var e,i=this.findScope(!1),r=this.left.end;"*"!==t.original[r];)r+=1;t.remove(r,r+2);var s=this.left.unparenthesize();if("Identifier"===s.type)e=i.resolveName(s.name);else if("MemberExpression"===s.type){var n,a,o=!1,p=!1,h=this.findNearest(/(?:Statement|Declaration)$/),c=h.getIndentation();"Identifier"===s.property.type?a=s.computed?i.resolveName(s.property.name):s.property.name:(a=i.createDeclaration("property"),p=!0),"Identifier"===s.object.type?n=i.resolveName(s.object.name):(n=i.createDeclaration("object"),o=!0),s.start===h.start?o&&p?(t.prependRight(h.start,n+" = "),t.overwrite(s.object.end,s.property.start,";\n"+c+a+" = "),t.overwrite(s.property.end,s.end,";\n"+c+n+"["+a+"]")):o?(t.prependRight(h.start,n+" = "),t.appendLeft(s.object.end,";\n"+c),t.appendLeft(s.object.end,n)):p&&(t.prependRight(s.property.start,a+" = "),t.appendLeft(s.property.end,";\n"+c),t.move(s.property.start,s.property.end,this.start),t.appendLeft(s.object.end,"["+a+"]"),t.remove(s.object.end,s.property.start),t.remove(s.property.end,s.end)):(o&&p?(t.prependRight(s.start,"( "+n+" = "),t.overwrite(s.object.end,s.property.start,", "+a+" = "),t.overwrite(s.property.end,s.end,", "+n+"["+a+"]")):o?(t.prependRight(s.start,"( "+n+" = "),t.appendLeft(s.object.end,", "+n)):p&&(t.prependRight(s.property.start,"( "+a+" = "),t.appendLeft(s.property.end,", "),t.move(s.property.start,s.property.end,s.start),t.overwrite(s.object.end,s.property.start,"["+a+"]"),t.remove(s.property.end,s.end)),p&&t.appendLeft(this.end," )")),e=n+(s.computed||p?"["+a+"]":"."+a)}t.prependRight(this.right.start,"Math.pow( "+e+", "),t.appendLeft(this.right.end," )")},e}(be),Xe=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.asyncAwait&&Ae.missingTransform("await","asyncAwait",this),t.prototype.initialise.call(this,e)},e}(be),We=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){"**"===this.operator&&i.exponentiation&&(e.prependRight(this.start,"Math.pow( "),e.overwrite(this.left.end,this.right.start,", "),e.appendLeft(this.end," )")),t.prototype.transpile.call(this,e,i)},e}(be),ze=/(?:For(?:In|Of)?|While)Statement/,He=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(){var t=this.findNearest(ze),e=this.findNearest("SwitchCase");t&&(!e||t.depth>e.depth)&&(t.canBreak=!0,this.loop=t)},e.prototype.transpile=function(t){if(this.loop&&this.loop.shouldRewriteAsFunction){if(this.label)throw new Ae("Labels are not currently supported in a loop with locally-scoped variables",this);t.overwrite(this.start,this.start+5,"return 'break'")}},e}(be),Ge=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if(e.spreadRest&&this.arguments.length>1)for(var i=this.findLexicalBoundary(),r=this.arguments.length;r--;){var s=this.arguments[r];"SpreadElement"===s.type&&Re(s.argument)&&(this.argumentsArrayAlias=i.getArgumentsArrayAlias())}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){if(i.spreadRest&&this.arguments.length&&Ve(e,this,this.arguments),i.spreadRest&&this.arguments.length){var r,s=!1,n=this.arguments[0];if(1===this.arguments.length?"SpreadElement"===n.type&&(e.remove(n.start,n.argument.start),s=!0):s=Be(e,this.arguments,n.start,this.argumentsArrayAlias),s){var a=null;if("Super"===this.callee.type?a=this.callee:"MemberExpression"===this.callee.type&&"Super"===this.callee.object.type&&(a=this.callee.object),a||"MemberExpression"!==this.callee.type)r="void 0";else if("Identifier"===this.callee.object.type)r=this.callee.object.name;else{r=this.findScope(!0).createDeclaration("ref");var o=this.callee.object;e.prependRight(o.start,"("+r+" = "),e.appendLeft(o.end,")")}e.appendLeft(this.callee.end,".apply"),a?(a.noCall=!0,this.arguments.length>1&&("SpreadElement"===n.type?De(n.argument)&&e.prependRight(n.start,"( "):e.prependRight(n.start,"[ "),e.appendLeft(this.arguments[this.arguments.length-1].end," )"))):1===this.arguments.length?e.prependRight(n.start,r+", "):("SpreadElement"===n.type?De(n.argument)?e.appendLeft(n.start,r+", ( "):e.appendLeft(n.start,r+", "):e.appendLeft(n.start,r+", [ "),e.appendLeft(this.arguments[this.arguments.length-1].end," )"))}}i.trailingFunctionCommas&&this.arguments.length&&Me(e,this.arguments[this.arguments.length-1].end),t.prototype.transpile.call(this,e,i)},e}(be),Qe=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i,r,s){var n=this;if(i.classes){var a=this.parent.name,o=e.getIndentString(),p=this.getIndentation()+(r?o:""),h=p+o,c=Ie(this.body,(function(t){return"constructor"===t.kind})),l=this.body[c],u="",d="";if(this.body.length?(e.remove(this.start,this.body[0].start),e.remove(this.body[this.body.length-1].end,this.end)):e.remove(this.start,this.end),l){l.value.body.isConstructorBody=!0;var f=this.body[c+1];c>0&&(e.remove(this.body[c-1].end,l.start),e.move(l.start,f?f.start:this.end-1,this.body[0].start)),r||e.appendLeft(l.end,";")}var m=[];this.body.forEach((function(t){if("FieldDefinition"===t.type&&(m.push(t.computed?"this"+e.slice(t.start,t.end)+";":"this."+e.slice(t.start,t.end)+";"),e.remove(t.start,t.end),""!==e.byStart[t.end].content)){for(var i=0;i0&&e.remove(t.end,t.end+i)}}));var y=!1!==this.program.options.namedFunctionExpressions,g=y||this.parent.superClass||"ClassDeclaration"!==this.parent.type;if(this.parent.superClass){var v="if ( "+s+" ) "+a+".__proto__ = "+s+";\n"+p+a+".prototype = Object.create( "+s+" && "+s+".prototype );\n"+p+a+".prototype.constructor = "+a+";";u+=l?"\n\n"+p+v:(v="function "+a+" () {"+(m.length?"\n"+h+m.join("\n"+h)+"\n"+h:"")+(s?"\n"+h+s+".apply(this, arguments);\n"+p+"}":"}")+(r?"":";")+(this.body.length?"\n\n"+p:"")+v)+"\n\n"+p}else if(!l){var x="function "+(g?a+" ":"")+"() {"+(m.length?"\n"+h+m.join("\n"+h)+"\n"+p:"")+"}";"ClassDeclaration"===this.parent.type&&(x+=";"),this.body.length&&(x+="\n\n"+p),u+=x}l&&m.length&&e.appendLeft(l.value.body.start+1,"\n"+h+m.join("\n"+h));var b,_,k=this.findScope(!1),S=[],w=[];if(this.body.forEach((function(t,r){if("get"!==t.kind&&"set"!==t.kind||!i.getterSetter||Ae.missingTransform("getters and setters","getterSetter",t),"FieldDefinition"!==t.type)if("constructor"!==t.kind){t.static&&e.remove(t.start,t.start+(" "==e.original[t.start+6]?7:6));var s,o="method"!==t.kind,h=t.key.name;(Se[h]||t.value.body.scope.references[h])&&(h=k.createIdentifier(h));var l=!1;if(t.computed||"Literal"!==t.key.type||(l=!0,t.computed=!0),o){if(t.computed)throw new Error("Computed accessor properties are not currently supported");e.remove(t.start,t.key.start),t.static?(~w.indexOf(t.key.name)||w.push(t.key.name),_||(_=k.createIdentifier("staticAccessors")),s=""+_):(~S.indexOf(t.key.name)||S.push(t.key.name),b||(b=k.createIdentifier("prototypeAccessors")),s=""+b)}else s=t.static?""+a:a+".prototype";t.computed||(s+="."),(c>0&&r===c+1||0===r&&c===n.body.length-1)&&(s="\n\n"+p+s);var u=t.key.end;if(t.computed)if(l)e.prependRight(t.key.start,"["),e.appendLeft(t.key.end,"]");else{for(;"]"!==e.original[u];)u+=1;u+=1}var d=(o?"."+t.kind:"")+" = "+(t.value.async?"async ":"")+"function"+(t.value.generator?"* ":" ")+(t.computed||o||!y?"":h+" ");e.remove(u,t.value.start),e.prependRight(t.value.start,d),e.appendLeft(t.end,";"),t.value.generator&&e.remove(t.start,t.key.start);var f=t.key.start;if(t.computed&&!l)for(;"["!=e.original[f];)--f;t.startthis.depth){this.shouldRewriteAsFunction=!0;for(var o=0,p=this.thisRefs;oe.depth&&(this.alias=e.getArgumentsAlias()),r&&r.body.contains(this)&&r.depth>e.depth&&(this.alias=e.getArgumentsAlias())}this.findScope(!1).addReference(this)}},e.prototype.transpile=function(t){this.alias&&t.overwrite(this.start,this.end,this.alias,{storeName:!0,contentOnly:!0})},e}(be),pi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){("BlockStatement"!==this.consequent.type||"BlockStatement"===this.consequent.type&&this.consequent.synthetic)&&(e.appendLeft(this.consequent.start,"{ "),e.prependRight(this.consequent.end," }")),this.alternate&&"IfStatement"!==this.alternate.type&&("BlockStatement"!==this.alternate.type||"BlockStatement"===this.alternate.type&&this.alternate.synthetic)&&(e.appendLeft(this.alternate.start,"{ "),e.prependRight(this.alternate.end," }")),t.prototype.transpile.call(this,e,i)},e}(be),hi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.moduleImport&&Ae.missingTransform("dynamic import expressions","moduleImport",this),t.prototype.initialise.call(this,e)},e}(be),ci=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.moduleImport&&Ae.missingTransform("import","moduleImport",this),t.prototype.initialise.call(this,e)},e}(be),li=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){this.findScope(!0).addDeclaration(this.local,"import"),t.prototype.initialise.call(this,e)},e}(be),ui=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){this.findScope(!0).addDeclaration(this.local,"import"),t.prototype.initialise.call(this,e)},e}(be),di=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){var r,s=this.name;e.overwrite(s.start,this.value?this.value.start:this.name.end,(/-/.test(r=s.name)?"'"+r+"'":r)+": "+(this.value?"":"true")),t.prototype.transpile.call(this,e,i)},e}(be),fi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(t){var e,i=!0,r=this.parent.children[this.parent.children.length-1];(r&&"JSXText"===(e=r).type&&!/\S/.test(e.value)&&/\n/.test(e.value)||this.parent.openingElement.attributes.length)&&(i=!1),t.overwrite(this.start,this.end,i?" )":")")},e}(be),mi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(t){var e,i=!0,r=this.parent.children[this.parent.children.length-1];r&&"JSXText"===(e=r).type&&!/\S/.test(e.value)&&/\n/.test(e.value)&&(i=!1),t.overwrite(this.start,this.end,i?" )":")")},e}(be);function yi(t,e){return t=t.replace(/\u00a0/g," "),e&&/\n/.test(t)&&(t=t.replace(/\s+$/,"")),t=t.replace(/^\n\r?\s+/,"").replace(/\s*\n\r?\s*/gm," "),JSON.stringify(t)}var gi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){t.prototype.transpile.call(this,e,i);var r=this.children.filter((function(t){return"JSXText"!==t.type||/\S/.test(t.raw)||!/\n/.test(t.raw)}));if(r.length){var s,n=(this.openingElement||this.openingFragment).end;for(s=0;s0&&(c.start===n?e.prependRight(n,", "):e.overwrite(n,c.start,", ")),h&&"JSXSpreadAttribute"!==c.type){var l=this.attributes[a-1],u=this.attributes[a+1];l&&"JSXSpreadAttribute"!==l.type||e.prependRight(c.start,"{ "),u&&"JSXSpreadAttribute"!==u.type||e.appendLeft(c.end," }")}n=c.end}if(h)if(1===s)p=r?"',":",";else{if(!this.program.options.objectAssign)throw new Ae("Mixed JSX attributes ending in spread requires specified objectAssign option with 'Object.assign' or polyfill helper.",this);p=r?"', "+this.program.options.objectAssign+"({},":", "+this.program.options.objectAssign+"({},",o=")"}else p=r?"', {":", {",o=" }";e.prependRight(this.name.end,p),o&&e.appendLeft(this.attributes[s-1].end,o)}else e.appendLeft(this.name.end,r?"', null":", null"),n=this.name.end;this.selfClosing?e.overwrite(n,this.end,this.attributes.length?")":" )"):e.remove(n,this.end)},e}(be),JSXOpeningFragment:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(t){t.overwrite(this.start,this.end,this.program.jsx+"( React.Fragment, null")},e}(be),JSXSpreadAttribute:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){e.remove(this.start,this.argument.start),e.remove(this.argument.end,this.end),t.prototype.transpile.call(this,e,i)},e}(be),Literal:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(){"string"==typeof this.value&&this.program.indentExclusionElements.push(this)},e.prototype.transpile=function(t,e){e.numericLiteral&&this.raw.match(/^0[bo]/i)&&t.overwrite(this.start,this.end,String(this.value),{storeName:!0,contentOnly:!0}),"string"==typeof this.value&&this.value.match(vi)&&t.overwrite(this.start,this.end,this.raw.replace(vi,(function(t){return"\u2028"==t?"\\u2028":"\\u2029"})),{contentOnly:!0})},e}(be),MemberExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){i.reservedProperties&&Se[this.property.name]&&(e.overwrite(this.object.end,this.property.start,"['"),e.appendLeft(this.property.end,"']")),t.prototype.transpile.call(this,e,i)},e}(be),NewExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if(e.spreadRest&&this.arguments.length)for(var i=this.findLexicalBoundary(),r=this.arguments.length;r--;){var s=this.arguments[r];if("SpreadElement"===s.type&&Re(s.argument)){this.argumentsArrayAlias=i.getArgumentsArrayAlias();break}}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){if(t.prototype.transpile.call(this,e,i),i.spreadRest&&this.arguments.length&&Ve(e,this,this.arguments),i.spreadRest&&this.arguments.length){var r=this.arguments[0];Be(e,this.arguments,r.start,this.argumentsArrayAlias,!0)&&(e.prependRight(this.start+"new".length," (Function.prototype.bind.apply("),e.overwrite(this.callee.end,r.start,", [ null ].concat( "),e.appendLeft(this.end," ))"))}this.arguments.length&&Me(e,this.arguments[this.arguments.length-1].end)},e}(be),ObjectExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){var r;t.prototype.transpile.call(this,e,i);for(var s=this.start+1,n=0,a=0,o=null,p=null,h=0;h0?(e.remove(c.start,l.properties[0].start),e.remove(l.properties[l.properties.length-1].end,c.end),(r=this.properties).splice.apply(r,[h,1].concat(l.properties)),h--):(e.remove(c.start,h===this.properties.length-1?c.end:this.properties[h+1].start),this.properties.splice(h,1),h--):(n+=1,null===o&&(o=h))}else c.computed&&i.computedProperty&&(a+=1,null===p&&(p=h))}if(!n||i.objectRestSpread||a&&i.computedProperty){if(n){if(!this.program.options.objectAssign)throw new Ae("Object spread operator requires specified objectAssign option with 'Object.assign' or polyfill helper.",this);for(var u=this.properties.length;u--;){var d=this.properties[u];if("Property"===d.type&&!a){var f=this.properties[u-1],m=this.properties[u+1];f&&"Property"===f.type||e.prependRight(d.start,"{"),m&&"Property"===m.type||e.appendLeft(d.end,"}")}"SpreadElement"===d.type&&(e.remove(d.start,d.argument.start),e.remove(d.argument.end,d.end))}s=this.properties[0].start,a?"SpreadElement"===this.properties[0].type?(e.overwrite(this.start,s,this.program.options.objectAssign+"({}, "),e.remove(this.end-1,this.end),e.appendRight(this.end,")")):(e.prependLeft(this.start,this.program.options.objectAssign+"("),e.appendRight(this.end,")")):(e.overwrite(this.start,s,this.program.options.objectAssign+"({}, "),e.overwrite(this.properties[this.properties.length-1].end,this.end,")"))}}else n=0,o=null;if(a&&i.computedProperty){var y,g,v=this.getIndentation();"VariableDeclarator"===this.parent.type&&1===this.parent.parent.declarations.length&&"Identifier"===this.parent.id.type?(y=!0,g=this.parent.id.alias||this.parent.id.name):("AssignmentExpression"===this.parent.type&&"ExpressionStatement"===this.parent.parent.type&&"Identifier"===this.parent.left.type||"AssignmentPattern"===this.parent.type&&"Identifier"===this.parent.left.type)&&(y=!0,g=this.parent.left.alias||this.parent.left.name),n&&(y=!1),g=this.findScope(!1).resolveName(g);var x=s,b=this.end;y||(null===o||pL&&e.remove(L,C.value.start),e.prependLeft(L," = ")):e.overwrite(C.start,C.key.end+1,"["+e.slice(C.start,C.key.end)+"] = "),!C.method||!C.computed&&i.conciseMethodProperty||(C.value.generator&&e.remove(C.start,C.key.start),e.prependRight(C.value.start,"function"+(C.value.generator?"*":"")+" "))}else"SpreadElement"===C.type?g&&E>0&&(_||(_=this.properties[E-1]),e.appendLeft(_.end,", "+g+" )"),_=null,g=null):(!w&&n&&(e.prependRight(C.start,"{"),e.appendLeft(C.end,"}")),S=!0);if(w&&("SpreadElement"===C.type||C.computed)){var P=S?this.properties[this.properties.length-1].end:this.end-1;","==e.original[P]&&++P;var N=e.slice(P,b);e.prependLeft(A,N),e.remove(P,b),w=!1}var O=C.end;if(Ethis.nearestFunction.depth)&&(this.loop.canReturn=!0,this.shouldWrap=!0),this.argument&&this.argument.initialise(t)},e.prototype.transpile=function(t,e){var i=this.shouldWrap&&this.loop&&this.loop.shouldRewriteAsFunction;this.argument?(i&&t.prependRight(this.argument.start,"{ v: "),this.argument.transpile(t,e),i&&t.appendLeft(this.argument.end," }")):i&&t.appendLeft(this.start+6," {}")},e}(be),Super:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(t){if(t.classes){if(this.method=this.findNearest("MethodDefinition"),!this.method)throw new Ae("use of super outside class method",this);var e=this.findNearest("ClassBody").parent;if(this.superClassName=e.superClass&&(e.superClass.name||"superclass"),!this.superClassName)throw new Ae("super used in base class",this);if(this.isCalled="CallExpression"===this.parent.type&&this===this.parent.callee,"constructor"!==this.method.kind&&this.isCalled)throw new Ae("super() not allowed outside class constructor",this);if(this.isMember="MemberExpression"===this.parent.type,!this.isCalled&&!this.isMember)throw new Ae("Unexpected use of `super` (expected `super(...)` or `super.*`)",this)}if(t.arrow){var i=this.findLexicalBoundary(),r=this.findNearest("ArrowFunctionExpression"),s=this.findNearest(ze);r&&r.depth>i.depth&&(this.thisAlias=i.getThisAlias()),s&&s.body.contains(this)&&s.depth>i.depth&&(this.thisAlias=i.getThisAlias())}},e.prototype.transpile=function(t,e){if(e.classes){t.overwrite(this.start,this.end,this.isCalled||this.method.static?this.superClassName:this.superClassName+".prototype",{storeName:!0,contentOnly:!0});var i=this.isCalled?this.parent:this.parent.parent;if(i&&"CallExpression"===i.type){this.noCall||t.appendLeft(i.callee.end,".call");var r=this.thisAlias||"this";i.arguments.length?t.appendLeft(i.arguments[0].start,r+", "):t.appendLeft(i.end-1,""+r)}}},e}(be),TaggedTemplateExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.templateString&&!e.dangerousTaggedTemplateString&&Ae.missingTransform("tagged template strings","templateString",this,"dangerousTaggedTemplateString"),t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){if(i.templateString&&i.dangerousTaggedTemplateString){var r=this.quasi.expressions.concat(this.quasi.quasis).sort((function(t,e){return t.start-e.start})),s=this.program.body.scope,n=this.quasi.quasis.map((function(t){return JSON.stringify(t.value.cooked)})).join(", "),a=this.program.templateLiteralQuasis[n];a||(a=s.createIdentifier("templateObject"),e.prependLeft(this.program.prependAt,"var "+a+" = Object.freeze(["+n+"]);\n"),this.program.templateLiteralQuasis[n]=a),e.overwrite(this.tag.end,r[0].start,"("+a);var o=r[0].start;r.forEach((function(t){"TemplateElement"===t.type?e.remove(o,t.end):e.overwrite(o,t.start,", "),o=t.end})),e.overwrite(o,this.end,")")}t.prototype.transpile.call(this,e,i)},e}(be),TemplateElement:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(){this.program.indentExclusionElements.push(this)},e}(be),TemplateLiteral:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){if(t.prototype.transpile.call(this,e,i),i.templateString&&"TaggedTemplateExpression"!==this.parent.type){var r=this.expressions.concat(this.quasis).sort((function(t,e){return t.start-e.start||t.end-e.end})).filter((function(t,e){return"TemplateElement"!==t.type||!!t.value.raw||!e}));if(r.length>=3){var s=r[0];"TemplateElement"===s.type&&""===s.value.raw&&"TemplateElement"===r[2].type&&r.shift()}var n=!(1===this.quasis.length&&0===this.expressions.length||"TemplateLiteral"===this.parent.type||"AssignmentExpression"===this.parent.type||"AssignmentPattern"===this.parent.type||"VariableDeclarator"===this.parent.type||"BinaryExpression"===this.parent.type&&"+"===this.parent.operator);n&&e.appendRight(this.start,"(");var a=this.start;r.forEach((function(t,i){var r=0===i?n?"(":"":" + ";if("TemplateElement"===t.type)e.overwrite(a,t.end,r+JSON.stringify(t.value.cooked));else{var s="Identifier"!==t.type;s&&(r+="("),e.remove(a,t.start),r&&e.prependRight(t.start,r),s&&e.appendLeft(t.end,")")}a=t.end})),n&&e.appendLeft(a,")"),e.overwrite(a,this.end,"",{contentOnly:!0})}},e}(be),ThisExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(t){var e=this.findLexicalBoundary();if(t.letConst)for(var i=this.findNearest(ze);i&&i.depth>e.depth;)i.thisRefs.push(this),i=i.parent.findNearest(ze);if(t.arrow){var r=this.findNearest("ArrowFunctionExpression");r&&r.depth>e.depth&&(this.alias=e.getThisAlias())}},e.prototype.transpile=function(t){this.alias&&t.overwrite(this.start,this.end,this.alias,{storeName:!0,contentOnly:!0})},e}(be),UpdateExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if("Identifier"===this.argument.type){var i=this.findScope(!1).findDeclaration(this.argument.name),r=i&&i.node.ancestor(3);r&&"ForStatement"===r.type&&r.body.contains(this)&&(r.reassigned[this.argument.name]=!0)}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){"Identifier"===this.argument.type&&qe(this.argument,this.findScope(!1)),t.prototype.transpile.call(this,e,i)},e}(be),VariableDeclaration:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(t){this.scope=this.findScope("var"===this.kind),this.declarations.forEach((function(e){return e.initialise(t)}))},e.prototype.transpile=function(t,e){var i=this,r=this.getIndentation(),s=this.kind;if(e.letConst&&"var"!==s&&t.overwrite(this.start,this.start+this.kind.length,s="var",{contentOnly:!0,storeName:!0}),e.destructuring&&"ForOfStatement"!==this.parent.type&&"ForInStatement"!==this.parent.type){var n,a=this.start;this.declarations.forEach((function(s,o){if(s.transpile(t,e),"Identifier"===s.id.type)o>0&&"Identifier"!==i.declarations[o-1].id.type&&t.overwrite(a,s.id.start,"var ");else{var p=ze.test(i.parent.type);0===o?t.remove(a,s.id.start):t.overwrite(a,s.id.start,";\n"+r);var h="Identifier"===s.init.type&&!s.init.rewritten,c=h?s.init.alias||s.init.name:s.findScope(!0).createIdentifier("ref");a=s.start;var l=[];h?t.remove(s.id.end,s.end):l.push((function(e,i,r){t.prependRight(s.id.end,"var "+c),t.appendLeft(s.init.end,""+r),t.move(s.id.end,s.end,e)}));var u=s.findScope(!1);Pe(t,(function(t){return u.createIdentifier(t)}),(function(t){return u.resolveName(t.name)}),s.id,c,p,l);var d=p?"var ":"",f=p?", ":";\n"+r;l.forEach((function(t,e){o===i.declarations.length-1&&e===l.length-1&&(f=p?"":";"),t(s.start,0===e?d:"",f)}))}a=s.end,n="Identifier"!==s.id.type})),n&&this.end>a&&t.overwrite(a,this.end,"",{contentOnly:!0})}else this.declarations.forEach((function(i){i.transpile(t,e)}))},e}(be),VariableDeclarator:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){var i=this.parent.kind;"let"===i&&"ForStatement"===this.parent.parent.type&&(i="for.let"),this.parent.scope.addDeclaration(this.id,i),t.prototype.initialise.call(this,e)},e.prototype.transpile=function(t,e){if(!this.init&&e.letConst&&"var"!==this.parent.kind){var i=this.findNearest(/Function|^For(In|Of)?Statement|^(?:Do)?WhileStatement/);!i||/Function/.test(i.type)||this.isLeftDeclaratorOfLoop()||t.appendLeft(this.id.end," = (void 0)")}this.id&&this.id.transpile(t,e),this.init&&this.init.transpile(t,e)},e.prototype.isLeftDeclaratorOfLoop=function(){return this.parent&&"VariableDeclaration"===this.parent.type&&this.parent.parent&&("ForInStatement"===this.parent.parent.type||"ForOfStatement"===this.parent.parent.type)&&this.parent.parent.left&&this.parent.parent.left.declarations[0]===this},e}(be),WhileStatement:ei},bi={Program:["body"],Literal:[]},_i={IfStatement:"consequent",ForStatement:"body",ForInStatement:"body",ForOfStatement:"body",WhileStatement:"body",DoWhileStatement:"body",ArrowFunctionExpression:"body"};function ki(t,e,i,r){this.type="Root",this.jsx=r.jsx||"React.createElement",this.options=r,this.source=t,this.magicString=new ve(t),this.ast=e,this.depth=0,function t(e,i){if(e)if("length"in e)for(var r=e.length;r--;)t(e[r],i);else if(!e.__wrapped){e.__wrapped=!0,bi[e.type]||(bi[e.type]=Object.keys(e).filter((function(t){return"object"==typeof e[t]})));var s=_i[e.type];if(s&&"BlockStatement"!==e[s].type){var n=e[s];e[s]={start:n.start,end:n.end,type:"BlockStatement",body:[n],synthetic:!0}}e.parent=i,e.program=i.program||i,e.depth=i.depth+1,e.keys=bi[e.type],e.indentation=void 0;for(var a=0,o=bi[e.type];a=8)||this.type!=oe){if(this.isContextual("async")){re.lastIndex=this.pos;var r=re.exec(this.input),s=this.input.charAt(this.pos+r[0].length);if(";"===s||"="===s)return e.key=this.parseIdent(!0),e.computed=!1,ne.call(this,e),this.finishNode(e,"FieldDefinition"),this.semicolon(),e}return Object(n.a)(Object(p.a)(i.prototype),"parseClassElement",this).apply(this,arguments)}return e.key=ae.call(this),e.computed=!1,"constructor"==e.key.name&&this.raise(e.start,"Classes may not have a field named constructor"),Object.prototype.hasOwnProperty.call(this._privateBoundNamesStack[this._privateBoundNamesStack.length-1],e.key.name)&&this.raise(e.start,"Duplicate private element"),this._privateBoundNamesStack[this._privateBoundNamesStack.length-1][e.key.name]=!0,delete this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length-1][e.key.name],ne.call(this,e),this.finishNode(e,"FieldDefinition"),this.semicolon(),e}},{key:"parseClassMethod",value:function(t,e,r,s){return e||r||"method"!=t.kind||t.static||this.options.ecmaVersion<8||this.type==se.parenL?Object(n.a)(Object(p.a)(i.prototype),"parseClassMethod",this).apply(this,arguments):(ne.call(this,t),delete t.kind,delete t.static,t=this.finishNode(t,"FieldDefinition"),this.semicolon(),t)}},{key:"parseSubscripts",value:function(t,e,r,s){for(var a;;){if(!(a=this.eat(se.bracketL))&&!this.eat(se.dot))return Object(n.a)(Object(p.a)(i.prototype),"parseSubscripts",this).call(this,t,e,r,s);var o=this.startNodeAt(e,r);o.object=t,a?o.property=this.parseExpression():this.type==oe?(o.property=ae.call(this),this._privateBoundNamesStack.length&&this._privateBoundNamesStack[this._privateBoundNamesStack.length-1][o.property.name]||(this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length-1][o.property.name]=o.property.start)):o.property=this.parseIdent(!0),o.computed=Boolean(a),a&&this.expect(se.bracketR),t=this.finishNode(o,"MemberExpression")}}},{key:"parseMaybeUnary",value:function(t,e){var r=Object(n.a)(Object(p.a)(i.prototype),"parseMaybeUnary",this).call(this,t,e);return"delete"==r.operator&&"MemberExpression"==r.argument.type&&"PrivateName"==r.argument.property.type&&this.raise(r.start,"Private elements may not be deleted"),r}},{key:"parseIdent",value:function(t,e){var r=Object(n.a)(Object(p.a)(i.prototype),"parseIdent",this).call(this,t,e);return this._inFieldValue&&"arguments"==r.name&&this.raise(r.start,"A class field initializer may not contain arguments"),r}},{key:"parseExprAtom",value:function(t){var e=Object(n.a)(Object(p.a)(i.prototype),"parseExprAtom",this).call(this,t);return this._inFieldValue&&"Super"==e.type&&this.raise(e.start,"A class field initializer may not contain super"),e}}]),i}(t)})),wi=["getterSetter","arrow","classes","computedProperty","conciseMethodProperty","defaultParameter","destructuring","forOf","generator","letConst","moduleExport","moduleImport","numericLiteral","parameterDestructuring","spreadRest","stickyRegExp","templateString","exponentiation","reservedProperties","trailingFunctionCommas","asyncAwait","objectRestSpread"],Ei=["dangerousTaggedTemplateString","dangerousForOf"];function Ci(t,e){var i;void 0===e&&(e={});var r=null;try{i=Si.parse(t,{ecmaVersion:10,preserveParens:!0,sourceType:"module",allowAwaitOutsideFunction:!0,allowReturnOutsideFunction:!0,allowHashBang:!0,onComment:function(t,e){if(!r){var i=/@jsx\s+([^\s]+)/.exec(e);i&&(r=i[1])}}}),e.jsx=r||e.jsx}catch(e){throw e.snippet=Ce(t,e.loc),e.toString=function(){return e.name+": "+e.message+"\n"+e.snippet},e}var s=Object.create(null);return wi.forEach((function(t){s[t]=!0})),Ei.forEach((function(t){s[t]=!0})),Object.keys(e.transforms||{}).forEach((function(t){if("modules"===t)return"moduleImport"in e.transforms||(s.moduleImport=e.transforms.modules),void("moduleExport"in e.transforms||(s.moduleExport=e.transforms.modules));if(!(t in s))throw new Error("Unknown transform '"+t+"'");s[t]=e.transforms[t]})),!0===e.objectAssign&&(e.objectAssign="Object.assign"),new ki(t,i,s,e).export(e)}}).call(this,i("HDXh").Buffer)}}]); -//# sourceMappingURL=056bf7cd-95a1b8aa376929e2a256.js.map \ No newline at end of file diff --git a/sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js.map b/sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js.map deleted file mode 100644 index ef3b8946..00000000 --- a/sites/oteguide/056bf7cd-95a1b8aa376929e2a256.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./node_modules/@philpl/buble/dist/buble.es.js"],"names":["_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Date","prototype","toString","call","e","_isNativeReflectConstruct","result","Super","NewTarget","this","constructor","arguments","apply","t","3","5","6","strict","strictBind","i","s","r","n","a","RegExp","o","p","h","c","length","l","test","String","fromCharCode","u","d","label","keyword","beforeExpr","startsExpr","isLoop","isAssign","prefix","postfix","binop","updateContext","f","m","g","y","v","x","num","regexp","string","name","eof","bracketL","bracketR","braceL","braceR","parenL","parenR","comma","semi","colon","dot","question","arrow","template","invalidTemplate","ellipsis","backQuote","dollarBraceL","eq","assign","incDec","logicalOR","logicalAND","bitwiseOR","bitwiseXOR","bitwiseAND","equality","relational","bitShift","plusMin","modulo","star","slash","starstar","_break","_case","_catch","_continue","_debugger","_default","_do","_else","_finally","_for","_function","_if","_return","_switch","_throw","_try","_var","_const","_while","_with","_new","_this","_super","_class","_extends","_export","_import","_null","_true","_false","_in","_instanceof","_typeof","_void","_delete","b","_","source","S","k","w","E","Object","C","hasOwnProperty","A","I","L","Array","isArray","N","replace","P","line","column","offset","T","start","end","sourceFile","R","lastIndex","exec","index","O","ecmaVersion","sourceType","onInsertedSemicolon","onTrailingComma","allowReserved","allowReturnOutsideFunction","allowImportExportEverywhere","allowAwaitOutsideFunction","allowHashBang","locations","onToken","onComment","ranges","program","directSourceFile","preserveParens","F","M","options","push","type","value","loc","range","keywords","reservedWords","reservedWordsStrict","reservedWordsStrictBind","input","containsEsc","pos","lineStart","lastIndexOf","curLine","slice","split","startLoc","endLoc","curPosition","lastTokEndLoc","lastTokStartLoc","lastTokStart","lastTokEnd","context","initialContext","exprAllowed","inModule","strictDirective","potentialArrowAt","yieldPos","awaitPos","awaitIdentPos","labels","undefinedExports","skipLineComment","scopeStack","enterScope","regexpState","U","inFunction","configurable","inGenerator","inAsync","allowSuper","allowDirectSuper","treatFunctionsAsVar","parse","startNode","nextToken","parseTopLevel","get","currentVarScope","flags","currentThisScope","treatFunctionsAsVarInScope","currentScope","inNonArrowFunction","extend","parseExpressionAt","parseExpression","tokenizer","defineProperties","q","X","J","shorthandAssign","trailingComma","parenthesizedAssign","parenthesizedBind","doubleProto","eat","next","isContextual","eatContextual","expectContextual","unexpected","canInsertSemicolon","insertSemicolon","semicolon","afterTrailingComma","expect","raise","checkPatternErrors","raiseRecoverable","checkExpressionErrors","checkYieldAwaitInDefaultParams","isSimpleAssignTarget","expression","W","body","parseStatement","keys","adaptDirectivePrologue","finishNode","z","kind","H","isLet","charCodeAt","isAsyncFunction","charAt","parseBreakContinueStatement","parseDebuggerStatement","parseDoStatement","parseForStatement","parseFunctionStatement","parseClass","parseIfStatement","parseReturnStatement","parseSwitchStatement","parseThrowStatement","parseTryStatement","parseVarStatement","parseWhileStatement","parseWithStatement","parseBlock","parseEmptyStatement","parseImport","parseExport","parseLabeledStatement","parseExpressionStatement","parseIdent","pop","parseParenExpression","parseFor","parseVar","declarations","init","await","parseForIn","toAssignable","checkLVal","parseFunction","Q","K","consequent","alternate","argument","discriminant","cases","exitScope","G","block","handler","param","parseBindingAtom","finalizer","object","statementStart","indexOf","update","id","left","right","parseMaybeAssign","parseVarId","initFunction","generator","async","parseFunctionParams","parseFunctionBody","params","parseBindingList","parseClassId","parseClassSuper","parseClassElement","superClass","_s","key","computed","startNodeAt","static","parsePropertyName","parseClassMethod","parseMethod","parseExprSubscripts","parseExprAtom","checkExport","declaration","shouldParseExportStatement","checkVariableExport","specifiers","parseExportSpecifiers","checkUnreserved","local","checkLocalExport","checkPatternExport","properties","elements","exported","parseImportSpecifiers","imported","isDirectiveCandidate","directive","raw","$","toAssignableList","operator","parseSpread","parseRestBinding","parseObj","parseBindingListItem","parseMaybeDefault","declareName","Y","checkPropClash","method","shorthand","proto","set","expressions","parseYield","parseMaybeConditional","parseExprOps","parseMaybeUnary","parseExprOp","buildBinary","parseAwait","parseSubscripts","parseSubscript","property","parseExprList","parseArrowExpression","callee","tag","quasi","parseTemplate","isTagged","readRegexp","parseLiteral","regex","pattern","parseParenAndDistinguishExpression","parseNew","parseParenItem","parseParenArrowList","finishNodeAt","Z","meta","parseTemplateElement","cooked","tail","quasis","isAsyncProp","parseProperty","parsePropertyValue","checkParams","isSimpleParamList","delegate","tt","SyntaxError","raisedAt","et","it","var","lexical","functions","st","rt","nt","at","token","isExpr","preserveSpace","override","ot","b_stat","b_expr","b_tmpl","p_stat","p_expr","q_tmpl","tryReadTemplateToken","f_stat","f_expr","f_expr_gen","f_gen","pt","braceIsBlock","curContext","inGeneratorContext","ht","ct","9","10","lt","ut","dt","ft","mt","binary","nonBinary","General_Category","Script","Script_Extensions","gc","sc","scx","gt","yt","parser","validFlags","unicodeProperties","switchU","switchN","lastIntValue","lastStringValue","lastAssertionIsQuantifiable","numCapturingParens","maxBackReference","groupNames","backReferenceNames","vt","xt","bt","_t","St","kt","wt","Et","Ct","reset","nextIndex","current","lookahead","advance","validateRegExpFlags","validateRegExpPattern","regexp_pattern","regexp_disjunction","regexp_alternative","regexp_eatQuantifier","regexp_eatTerm","regexp_eatAssertion","regexp_eatAtom","regexp_eatExtendedAtom","regexp_eatQuantifierPrefix","regexp_eatBracedQuantifier","regexp_eatDecimalDigits","regexp_eatPatternCharacters","regexp_eatReverseSolidusAtomEscape","regexp_eatCharacterClass","regexp_eatUncapturingGroup","regexp_eatCapturingGroup","regexp_eatAtomEscape","regexp_groupSpecifier","regexp_eatInvalidBracedQuantifier","regexp_eatExtendedPatternCharacter","regexp_eatSyntaxCharacter","regexp_eatGroupName","regexp_eatRegExpIdentifierName","regexp_eatRegExpIdentifierStart","regexp_eatRegExpIdentifierPart","regexp_eatRegExpUnicodeEscapeSequence","regexp_eatBackReference","regexp_eatCharacterClassEscape","regexp_eatCharacterEscape","regexp_eatKGroupName","regexp_eatDecimalEscape","regexp_eatControlEscape","regexp_eatCControlLetter","regexp_eatZero","regexp_eatHexEscapeSequence","regexp_eatLegacyOctalEscapeSequence","regexp_eatIdentityEscape","regexp_eatControlLetter","regexp_eatFixedHexDigits","regexp_eatHexDigits","regexp_eatUnicodePropertyValueExpression","regexp_eatUnicodePropertyName","regexp_eatUnicodePropertyValue","regexp_validateUnicodePropertyNameAndValue","regexp_eatLoneUnicodePropertyNameOrValue","regexp_validateUnicodePropertyNameOrValue","regexp_classRanges","regexp_eatClassAtom","regexp_eatClassEscape","regexp_eatClassControlLetter","regexp_eatOctalDigit","At","It","Lt","getToken","Symbol","iterator","done","skipSpace","finishToken","readToken","fullCharCodeAtPos","readWord","getTokenFromCode","skipBlockComment","readToken_dot","readNumber","readToken_slash","finishOp","readToken_mult_modulo_exp","readToken_pipe_amp","readToken_caret","readToken_plus_min","readToken_lt_gt","readToken_eq_excl","readRadixNumber","readString","readWord1","readInt","Infinity","parseInt","parseFloat","readCodePoint","readHexChar","invalidStringToken","readEscapedChar","Nt","inTemplateElement","readTmplToken","readInvalidTemplateToken","substr","match","Pt","quot","amp","apos","nbsp","iexcl","cent","pound","curren","yen","brvbar","sect","uml","copy","ordf","laquo","not","shy","reg","macr","deg","plusmn","sup2","sup3","acute","micro","para","middot","cedil","sup1","ordm","raquo","frac14","frac12","frac34","iquest","Agrave","Aacute","Acirc","Atilde","Auml","Aring","AElig","Ccedil","Egrave","Eacute","Ecirc","Euml","Igrave","Iacute","Icirc","Iuml","ETH","Ntilde","Ograve","Oacute","Ocirc","Otilde","Ouml","times","Oslash","Ugrave","Uacute","Ucirc","Uuml","Yacute","THORN","szlig","agrave","aacute","acirc","atilde","auml","aring","aelig","ccedil","egrave","eacute","ecirc","euml","igrave","iacute","icirc","iuml","eth","ntilde","ograve","oacute","ocirc","otilde","ouml","divide","oslash","ugrave","uacute","ucirc","uuml","yacute","thorn","yuml","OElig","oelig","Scaron","scaron","Yuml","fnof","circ","tilde","Alpha","Beta","Gamma","Delta","Epsilon","Zeta","Eta","Theta","Iota","Kappa","Lambda","Mu","Nu","Xi","Omicron","Pi","Rho","Sigma","Tau","Upsilon","Phi","Chi","Psi","Omega","alpha","beta","gamma","delta","epsilon","zeta","eta","theta","iota","kappa","lambda","mu","nu","xi","omicron","pi","rho","sigmaf","sigma","tau","upsilon","phi","chi","psi","omega","thetasym","upsih","piv","ensp","emsp","thinsp","zwnj","zwj","lrm","rlm","ndash","mdash","lsquo","rsquo","sbquo","ldquo","rdquo","bdquo","dagger","Dagger","bull","hellip","permil","prime","Prime","lsaquo","rsaquo","oline","frasl","euro","image","weierp","real","trade","alefsym","larr","uarr","rarr","darr","harr","crarr","lArr","uArr","rArr","dArr","hArr","forall","part","exist","empty","nabla","isin","notin","ni","prod","sum","minus","lowast","radic","prop","infin","ang","and","or","cap","cup","int","there4","sim","cong","asymp","ne","equiv","le","ge","sub","sup","nsub","sube","supe","oplus","otimes","perp","sdot","lceil","rceil","lfloor","rfloor","lang","rang","loz","spades","clubs","hearts","diams","Tt","version","Parser","defaultOptions","Position","SourceLocation","getLineInfo","Node","TokenType","tokTypes","keywordTypes","TokContext","tokContexts","isIdentifierChar","isIdentifierStart","Token","isNewLine","lineBreak","lineBreakG","nonASCIIwhitespace","Rt","Ot","jt","Vt","Dt","Bt","Ft","Mt","Ut","qt","Xt","Jt","Wt","jsxName","jsxText","jsxTagStart","jsxTagEnd","zt","namespace","Ht","_e2","_i2","jsx_readEntity","jsx_readNewLine","_s2","jsx_parseIdentifier","allowNamespaces","jsx_parseNamespacedName","allowNamespacedObjects","_t2","_t3","jsx_parseExpressionContainer","jsx_parseEmptyExpression","jsx_parseAttributeValue","attributes","jsx_parseElementName","jsx_parseAttribute","selfClosing","jsx_parseOpeningElementAt","jsx_parseClosingElementAt","jsx_parseElementAt","children","jsx_parseText","jsx_parseElement","jsx_readToken","jsx_readWord","jsx_readString","Gt","Qt","Kt","defineProperty","DynamicImportKey","enumerable","writable","Function","getOwnPropertyDescriptor","getPrototypeOf","default","TypeError","ReferenceError","__proto__","create","setPrototypeOf","exports","__esModule","$t","Yt","Zt","_e3","_inFieldValue","te","ee","se","re","original","intro","outro","content","storeName","edited","previous","appendLeft","appendRight","clone","contains","eachNext","eachPrevious","edit","prependLeft","prependRight","trimEnd","trimStart","Error","window","btoa","unescape","encodeURIComponent","Buffer","from","ae","file","sources","sourcesContent","names","mappings","join","oe","filter","reduce","Math","min","pe","shift","concat","JSON","stringify","toUrl","he","ce","hires","generatedCodeLine","generatedCodeColumn","rawSegments","pending","addEdit","addUneditedChunk","de","insertLeft","insertRight","fe","firstChunk","lastChunk","lastSearchedChunk","byStart","byEnd","filename","indentExclusionRanges","sourcemapLocations","storedNames","indentStr","me","forEach","map","toJSON","addSourcemapLocation","append","_split","generateDecodedMap","includeContent","generateMap","getIndentString","indent","exclude","indentStart","_splitChunk","insert","console","warn","move","overwrite","contentOnly","prepend","remove","lastChar","lastLine","snip","isEmpty","trim","trimLines","trimEndAborted","trimStartAborted","ye","ve","ancestor","parent","findLexicalBoundary","findNearest","unparenthesizedParent","unparenthesize","findScope","getIndentation","initialise","magicString","transpile","Identifier","ObjectPattern","Property","ArrayPattern","RestElement","AssignmentPattern","xe","be","isBlockScope","createDeclarationCallback","declare","functionScope","identifiers","references","blockScopedDeclarations","aliases","Se","ke","max","addDeclaration","node","instances","addReference","consolidated","consolidateReference","consolidate","createIdentifier","createDeclaration","findDeclaration","resolveName","we","char","_e","message","stack","snippet","missingTransform","Ee","Ce","Ie","Ae","Ne","Le","getObjectWithoutPropertiesHelper","Boolean","Pe","createScope","parentIsFunction","isFunctionBlock","scope","createdDeclarations","thisAlias","argumentsAlias","defaultParameters","getArgumentsAlias","getArgumentsArrayAlias","argumentsArrayAlias","getThisAlias","indentation","synthetic","transpileParameters","letConst","transpileBlockScopedIdentifiers","defaultParameter","spreadRest","parameterDestructuring","shouldRewriteAsFunction","reassigned","outer","inner","rewritten","Te","Re","some","splice","Oe","je","Ve","De","Be","asyncAwait","needsArguments","trailingFunctionCommas","Fe","Me","exponentiation","transpileExponentiation","destructuring","transpileDestructuring","Ue","qe","Xe","Je","depth","canBreak","loop","We","noCall","ze","classes","isConstructorBody","namedFunctionExpressions","getterSetter","He","indentExclusions","Ge","Qe","Ke","moduleExport","$e","Ye","createdScope","thisRefs","alias","args","canReturn","Ze","ti","destructurePattern","ei","forOf","dangerousForOf","ii","si","conciseMethodProperty","ri","ai","moduleImport","oi","hi","ci","li","openingElement","ui","di","fi","openingFragment","mi","gi","ArrayExpression","ArrowFunctionExpression","AssignmentExpression","AwaitExpression","BinaryExpression","BreakStatement","CallExpression","ClassBody","ClassDeclaration","ClassExpression","ContinueStatement","DoWhileStatement","ExportNamedDeclaration","ExportDefaultDeclaration","ForStatement","ForInStatement","ForOfStatement","FunctionDeclaration","FunctionExpression","IfStatement","Import","ImportDeclaration","ImportDefaultSpecifier","ImportSpecifier","JSXAttribute","JSXClosingElement","JSXClosingFragment","JSXElement","JSXExpressionContainer","JSXFragment","JSXOpeningElement","jsx","toLowerCase","objectAssign","JSXOpeningFragment","JSXSpreadAttribute","Literal","indentExclusionElements","numericLiteral","MemberExpression","reservedProperties","NewExpression","ObjectExpression","computedProperty","objectRestSpread","ReturnStatement","nearestFunction","shouldWrap","superClassName","isCalled","isMember","TaggedTemplateExpression","templateString","dangerousTaggedTemplateString","sort","templateLiteralQuasis","prependAt","TemplateElement","TemplateLiteral","ThisExpression","UpdateExpression","VariableDeclaration","VariableDeclarator","isLeftDeclaratorOfLoop","WhileStatement","yi","Program","vi","ast","__wrapped","objectWithoutPropertiesHelper","export","code","bi","_t4","_class2","_super2","_t5","_privateBoundNamesStack","_unresolvedPrivateNamesStack","_t6","_t7","_i3","_r","_s3","_i","Si","ki","transforms","modules"],"mappings":"4FAAA,+IASA,SAASA,EAAaC,GAAW,IAAIC,EAErC,WAAuC,GAAuB,oBAAZC,UAA4BA,QAAQC,UAAW,OAAO,EAAO,GAAID,QAAQC,UAAUC,KAAM,OAAO,EAAO,GAAqB,mBAAVC,MAAsB,OAAO,EAAM,IAAiF,OAA3EC,KAAKC,UAAUC,SAASC,KAAKP,QAAQC,UAAUG,KAAM,IAAI,iBAAyB,EAAQ,MAAOI,GAAK,OAAO,GAFzPC,GAA6B,OAAO,WAAkC,IAAsCC,EAAlCC,EAAQ,YAAgBb,GAAkB,GAAIC,EAA2B,CAAE,IAAIa,EAAY,YAAgBC,MAAMC,YAAaJ,EAASV,QAAQC,UAAUU,EAAOI,UAAWH,QAAqBF,EAASC,EAAMK,MAAMH,KAAME,WAAc,OAAO,YAA2BF,KAAMH,IAI5Z,IAAIO,EAAI,CACNC,EAAG,sNACHC,EAAG,+CACHC,EAAG,OACHC,OAAQ,yEACRC,WAAY,kBAEVd,EAAI,8KACJe,EAAI,CACNJ,EAAGX,EACHY,EAAGZ,EAAI,4CAELgB,EAAI,kBACJC,EAAI,86BACJC,EAAI,ijBACJC,EAAI,IAAIC,OAAO,IAAMH,EAAI,KACzBI,EAAI,IAAID,OAAO,IAAMH,EAAIC,EAAI,KACjCD,EAAIC,EAAI,KACR,IAAII,EAAI,CAAC,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,IAAK,GAAI,GAAI,IAAK,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,IAAK,GAAI,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,IAAK,IAAK,GAAI,GAAI,GAAI,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,GAAI,GAAI,EAAG,EAAG,GAAI,IAAK,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,IAAK,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,IAAK,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,IAAK,GAAI,IAAK,GAAI,GAAI,EAAG,IAAK,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,GAAI,GAAI,IAAK,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,IAAK,GAAI,IAAK,IAAK,IAAK,IAAK,GAAI,IAAK,KAAM,KAAM,KAAM,IAAK,KAAM,IAAK,EAAG,GAAI,IAAK,GAAI,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,GAAI,IAAK,GAAI,IAAK,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,KAAM,GAAI,IAAK,KAAM,IAAK,GAAI,IAAK,KAAM,IAAK,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,KAAM,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,KAAM,IAAK,GAAI,GAAI,KAAM,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,KAAM,MAAO,GAAI,KAAM,GAAI,IAAK,EAAG,KAAM,GAAI,KAAM,KAAM,KACrjDC,EAAI,CAAC,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,GAAI,IAAK,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,IAAK,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,IAAK,EAAG,IAAK,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,IAAK,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,GAAI,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAA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","file":"056bf7cd-95a1b8aa376929e2a256.js","sourcesContent":["import \"core-js/modules/es.string.trim-end\";\nimport \"core-js/modules/es.string.trim-start\";\nimport _classCallCheck from \"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _get from \"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/node_modules/@babel/runtime/helpers/esm/get\";\nimport _inherits from \"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nvar t = {\n 3: \"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile\",\n 5: \"class enum extends super const export import\",\n 6: \"enum\",\n strict: \"implements interface let package private protected public static yield\",\n strictBind: \"eval arguments\"\n},\n e = \"break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this\",\n i = {\n 5: e,\n 6: e + \" const class extends export import super\"\n},\n s = /^in(stanceof)?$/,\n r = \"ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࢽऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿯ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞹꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ\",\n n = \"‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ංඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ູົຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭ᳲ-᳴᳷-᳹᷀-᷹᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_\",\n a = new RegExp(\"[\" + r + \"]\"),\n o = new RegExp(\"[\" + r + n + \"]\");\nr = n = null;\nvar p = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 157, 310, 10, 21, 11, 7, 153, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 477, 28, 11, 0, 9, 21, 190, 52, 76, 44, 33, 24, 27, 35, 30, 0, 12, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 85, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 54, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 86, 26, 230, 43, 117, 63, 32, 0, 257, 0, 11, 39, 8, 0, 22, 0, 12, 39, 3, 3, 20, 0, 35, 56, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 270, 921, 103, 110, 18, 195, 2749, 1070, 4050, 582, 8634, 568, 8, 30, 114, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 68, 12, 0, 67, 12, 65, 1, 31, 6129, 15, 754, 9486, 286, 82, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 4149, 196, 60, 67, 1213, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42710, 42, 4148, 12, 221, 3, 5761, 15, 7472, 3104, 541],\n h = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 525, 10, 176, 2, 54, 14, 32, 9, 16, 3, 46, 10, 54, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 4, 9, 83, 11, 7, 0, 161, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 280, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 19306, 9, 135, 4, 60, 6, 26, 9, 1016, 45, 17, 3, 19723, 1, 5319, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 2214, 6, 110, 6, 6, 9, 792487, 239];\n\nfunction c(t, e) {\n for (var i = 65536, s = 0; s < e.length; s += 2) {\n if ((i += e[s]) > t) return !1;\n if ((i += e[s + 1]) >= t) return !0;\n }\n}\n\nfunction l(t, e) {\n return t < 65 ? 36 === t : t < 91 || (t < 97 ? 95 === t : t < 123 || (t <= 65535 ? t >= 170 && a.test(String.fromCharCode(t)) : !1 !== e && c(t, p)));\n}\n\nfunction u(t, e) {\n return t < 48 ? 36 === t : t < 58 || !(t < 65) && (t < 91 || (t < 97 ? 95 === t : t < 123 || (t <= 65535 ? t >= 170 && o.test(String.fromCharCode(t)) : !1 !== e && (c(t, p) || c(t, h)))));\n}\n\nvar d = function d(t, e) {\n void 0 === e && (e = {}), this.label = t, this.keyword = e.keyword, this.beforeExpr = !!e.beforeExpr, this.startsExpr = !!e.startsExpr, this.isLoop = !!e.isLoop, this.isAssign = !!e.isAssign, this.prefix = !!e.prefix, this.postfix = !!e.postfix, this.binop = e.binop || null, this.updateContext = null;\n};\n\nfunction f(t, e) {\n return new d(t, {\n beforeExpr: !0,\n binop: e\n });\n}\n\nvar m = {\n beforeExpr: !0\n},\n g = {\n startsExpr: !0\n},\n y = {};\n\nfunction v(t, e) {\n return void 0 === e && (e = {}), e.keyword = t, y[t] = new d(t, e);\n}\n\nvar x = {\n num: new d(\"num\", g),\n regexp: new d(\"regexp\", g),\n string: new d(\"string\", g),\n name: new d(\"name\", g),\n eof: new d(\"eof\"),\n bracketL: new d(\"[\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n bracketR: new d(\"]\"),\n braceL: new d(\"{\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n braceR: new d(\"}\"),\n parenL: new d(\"(\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n parenR: new d(\")\"),\n comma: new d(\",\", m),\n semi: new d(\";\", m),\n colon: new d(\":\", m),\n dot: new d(\".\"),\n question: new d(\"?\", m),\n arrow: new d(\"=>\", m),\n template: new d(\"template\"),\n invalidTemplate: new d(\"invalidTemplate\"),\n ellipsis: new d(\"...\", m),\n backQuote: new d(\"`\", g),\n dollarBraceL: new d(\"${\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n eq: new d(\"=\", {\n beforeExpr: !0,\n isAssign: !0\n }),\n assign: new d(\"_=\", {\n beforeExpr: !0,\n isAssign: !0\n }),\n incDec: new d(\"++/--\", {\n prefix: !0,\n postfix: !0,\n startsExpr: !0\n }),\n prefix: new d(\"!/~\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n }),\n logicalOR: f(\"||\", 1),\n logicalAND: f(\"&&\", 2),\n bitwiseOR: f(\"|\", 3),\n bitwiseXOR: f(\"^\", 4),\n bitwiseAND: f(\"&\", 5),\n equality: f(\"==/!=/===/!==\", 6),\n relational: f(\"/<=/>=\", 7),\n bitShift: f(\"<>/>>>\", 8),\n plusMin: new d(\"+/-\", {\n beforeExpr: !0,\n binop: 9,\n prefix: !0,\n startsExpr: !0\n }),\n modulo: f(\"%\", 10),\n star: f(\"*\", 10),\n slash: f(\"/\", 10),\n starstar: new d(\"**\", {\n beforeExpr: !0\n }),\n _break: v(\"break\"),\n _case: v(\"case\", m),\n _catch: v(\"catch\"),\n _continue: v(\"continue\"),\n _debugger: v(\"debugger\"),\n _default: v(\"default\", m),\n _do: v(\"do\", {\n isLoop: !0,\n beforeExpr: !0\n }),\n _else: v(\"else\", m),\n _finally: v(\"finally\"),\n _for: v(\"for\", {\n isLoop: !0\n }),\n _function: v(\"function\", g),\n _if: v(\"if\"),\n _return: v(\"return\", m),\n _switch: v(\"switch\"),\n _throw: v(\"throw\", m),\n _try: v(\"try\"),\n _var: v(\"var\"),\n _const: v(\"const\"),\n _while: v(\"while\", {\n isLoop: !0\n }),\n _with: v(\"with\"),\n _new: v(\"new\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n _this: v(\"this\", g),\n _super: v(\"super\", g),\n _class: v(\"class\", g),\n _extends: v(\"extends\", m),\n _export: v(\"export\"),\n _import: v(\"import\"),\n _null: v(\"null\", g),\n _true: v(\"true\", g),\n _false: v(\"false\", g),\n _in: v(\"in\", {\n beforeExpr: !0,\n binop: 7\n }),\n _instanceof: v(\"instanceof\", {\n beforeExpr: !0,\n binop: 7\n }),\n _typeof: v(\"typeof\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n }),\n _void: v(\"void\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n }),\n _delete: v(\"delete\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n })\n},\n b = /\\r\\n?|\\n|\\u2028|\\u2029/,\n _ = new RegExp(b.source, \"g\");\n\nfunction S(t, e) {\n return 10 === t || 13 === t || !e && (8232 === t || 8233 === t);\n}\n\nvar k = /[\\u1680\\u2000-\\u200a\\u202f\\u205f\\u3000\\ufeff]/,\n w = /(?:\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*/g,\n E = Object.prototype,\n C = E.hasOwnProperty,\n A = E.toString;\n\nfunction I(t, e) {\n return C.call(t, e);\n}\n\nvar L = Array.isArray || function (t) {\n return \"[object Array]\" === A.call(t);\n};\n\nfunction N(t) {\n return new RegExp(\"^(?:\" + t.replace(/ /g, \"|\") + \")$\");\n}\n\nvar P = function P(t, e) {\n this.line = t, this.column = e;\n};\n\nP.prototype.offset = function (t) {\n return new P(this.line, this.column + t);\n};\n\nvar T = function T(t, e, i) {\n this.start = e, this.end = i, null !== t.sourceFile && (this.source = t.sourceFile);\n};\n\nfunction R(t, e) {\n for (var i = 1, s = 0;;) {\n _.lastIndex = s;\n\n var r = _.exec(t);\n\n if (!(r && r.index < e)) return new P(i, e - s);\n ++i, s = r.index + r[0].length;\n }\n}\n\nvar O = {\n ecmaVersion: 9,\n sourceType: \"script\",\n onInsertedSemicolon: null,\n onTrailingComma: null,\n allowReserved: null,\n allowReturnOutsideFunction: !1,\n allowImportExportEverywhere: !1,\n allowAwaitOutsideFunction: !1,\n allowHashBang: !1,\n locations: !1,\n onToken: null,\n onComment: null,\n ranges: !1,\n program: null,\n sourceFile: null,\n directSourceFile: null,\n preserveParens: !1\n},\n j = 2,\n V = 1 | j,\n D = 4,\n B = 8;\n\nfunction F(t, e) {\n return j | (t ? D : 0) | (e ? B : 0);\n}\n\nvar M = function M(e, s, r) {\n this.options = e = function (t) {\n var e = {};\n\n for (var i in O) {\n e[i] = t && I(t, i) ? t[i] : O[i];\n }\n\n if (e.ecmaVersion >= 2015 && (e.ecmaVersion -= 2009), null == e.allowReserved && (e.allowReserved = e.ecmaVersion < 5), L(e.onToken)) {\n var s = e.onToken;\n\n e.onToken = function (t) {\n return s.push(t);\n };\n }\n\n return L(e.onComment) && (e.onComment = function (t, e) {\n return function (i, s, r, n, a, o) {\n var p = {\n type: i ? \"Block\" : \"Line\",\n value: s,\n start: r,\n end: n\n };\n t.locations && (p.loc = new T(this, a, o)), t.ranges && (p.range = [r, n]), e.push(p);\n };\n }(e, e.onComment)), e;\n }(e), this.sourceFile = e.sourceFile, this.keywords = N(i[e.ecmaVersion >= 6 ? 6 : 5]);\n var n = \"\";\n\n if (!e.allowReserved) {\n for (var a = e.ecmaVersion; !(n = t[a]); a--) {\n ;\n }\n\n \"module\" === e.sourceType && (n += \" await\");\n }\n\n this.reservedWords = N(n);\n var o = (n ? n + \" \" : \"\") + t.strict;\n this.reservedWordsStrict = N(o), this.reservedWordsStrictBind = N(o + \" \" + t.strictBind), this.input = String(s), this.containsEsc = !1, r ? (this.pos = r, this.lineStart = this.input.lastIndexOf(\"\\n\", r - 1) + 1, this.curLine = this.input.slice(0, this.lineStart).split(b).length) : (this.pos = this.lineStart = 0, this.curLine = 1), this.type = x.eof, this.value = null, this.start = this.end = this.pos, this.startLoc = this.endLoc = this.curPosition(), this.lastTokEndLoc = this.lastTokStartLoc = null, this.lastTokStart = this.lastTokEnd = this.pos, this.context = this.initialContext(), this.exprAllowed = !0, this.inModule = \"module\" === e.sourceType, this.strict = this.inModule || this.strictDirective(this.pos), this.potentialArrowAt = -1, this.yieldPos = this.awaitPos = this.awaitIdentPos = 0, this.labels = [], this.undefinedExports = {}, 0 === this.pos && e.allowHashBang && \"#!\" === this.input.slice(0, 2) && this.skipLineComment(2), this.scopeStack = [], this.enterScope(1), this.regexpState = null;\n},\n U = {\n inFunction: {\n configurable: !0\n },\n inGenerator: {\n configurable: !0\n },\n inAsync: {\n configurable: !0\n },\n allowSuper: {\n configurable: !0\n },\n allowDirectSuper: {\n configurable: !0\n },\n treatFunctionsAsVar: {\n configurable: !0\n }\n};\n\nM.prototype.parse = function () {\n var t = this.options.program || this.startNode();\n return this.nextToken(), this.parseTopLevel(t);\n}, U.inFunction.get = function () {\n return (this.currentVarScope().flags & j) > 0;\n}, U.inGenerator.get = function () {\n return (this.currentVarScope().flags & B) > 0;\n}, U.inAsync.get = function () {\n return (this.currentVarScope().flags & D) > 0;\n}, U.allowSuper.get = function () {\n return (64 & this.currentThisScope().flags) > 0;\n}, U.allowDirectSuper.get = function () {\n return (128 & this.currentThisScope().flags) > 0;\n}, U.treatFunctionsAsVar.get = function () {\n return this.treatFunctionsAsVarInScope(this.currentScope());\n}, M.prototype.inNonArrowFunction = function () {\n return (this.currentThisScope().flags & j) > 0;\n}, M.extend = function () {\n for (var t = [], e = arguments.length; e--;) {\n t[e] = arguments[e];\n }\n\n for (var i = this, s = 0; s < t.length; s++) {\n i = t[s](i);\n }\n\n return i;\n}, M.parse = function (t, e) {\n return new this(e, t).parse();\n}, M.parseExpressionAt = function (t, e, i) {\n var s = new this(i, t, e);\n return s.nextToken(), s.parseExpression();\n}, M.tokenizer = function (t, e) {\n return new this(e, t);\n}, Object.defineProperties(M.prototype, U);\nvar q = M.prototype,\n X = /^(?:'((?:\\\\.|[^'])*?)'|\"((?:\\\\.|[^\"])*?)\")/;\n\nfunction J() {\n this.shorthandAssign = this.trailingComma = this.parenthesizedAssign = this.parenthesizedBind = this.doubleProto = -1;\n}\n\nq.strictDirective = function (t) {\n for (;;) {\n w.lastIndex = t, t += w.exec(this.input)[0].length;\n var e = X.exec(this.input.slice(t));\n if (!e) return !1;\n if (\"use strict\" === (e[1] || e[2])) return !0;\n w.lastIndex = t += e[0].length, t += w.exec(this.input)[0].length, \";\" === this.input[t] && t++;\n }\n}, q.eat = function (t) {\n return this.type === t && (this.next(), !0);\n}, q.isContextual = function (t) {\n return this.type === x.name && this.value === t && !this.containsEsc;\n}, q.eatContextual = function (t) {\n return !!this.isContextual(t) && (this.next(), !0);\n}, q.expectContextual = function (t) {\n this.eatContextual(t) || this.unexpected();\n}, q.canInsertSemicolon = function () {\n return this.type === x.eof || this.type === x.braceR || b.test(this.input.slice(this.lastTokEnd, this.start));\n}, q.insertSemicolon = function () {\n if (this.canInsertSemicolon()) return this.options.onInsertedSemicolon && this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc), !0;\n}, q.semicolon = function () {\n this.eat(x.semi) || this.insertSemicolon() || this.unexpected();\n}, q.afterTrailingComma = function (t, e) {\n if (this.type === t) return this.options.onTrailingComma && this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc), e || this.next(), !0;\n}, q.expect = function (t) {\n this.eat(t) || this.unexpected();\n}, q.unexpected = function (t) {\n this.raise(null != t ? t : this.start, \"Unexpected token\");\n}, q.checkPatternErrors = function (t, e) {\n if (t) {\n t.trailingComma > -1 && this.raiseRecoverable(t.trailingComma, \"Comma is not permitted after the rest element\");\n var i = e ? t.parenthesizedAssign : t.parenthesizedBind;\n i > -1 && this.raiseRecoverable(i, \"Parenthesized pattern\");\n }\n}, q.checkExpressionErrors = function (t, e) {\n if (!t) return !1;\n var i = t.shorthandAssign,\n s = t.doubleProto;\n if (!e) return i >= 0 || s >= 0;\n i >= 0 && this.raise(i, \"Shorthand property assignments are valid only in destructuring patterns\"), s >= 0 && this.raiseRecoverable(s, \"Redefinition of __proto__ property\");\n}, q.checkYieldAwaitInDefaultParams = function () {\n this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos) && this.raise(this.yieldPos, \"Yield expression cannot be a default value\"), this.awaitPos && this.raise(this.awaitPos, \"Await expression cannot be a default value\");\n}, q.isSimpleAssignTarget = function (t) {\n return \"ParenthesizedExpression\" === t.type ? this.isSimpleAssignTarget(t.expression) : \"Identifier\" === t.type || \"MemberExpression\" === t.type;\n};\nvar W = M.prototype;\n\nW.parseTopLevel = function (t) {\n var e = {};\n\n for (t.body || (t.body = []); this.type !== x.eof;) {\n var i = this.parseStatement(null, !0, e);\n t.body.push(i);\n }\n\n if (this.inModule) for (var s = 0, r = Object.keys(this.undefinedExports); s < r.length; s += 1) {\n var n = r[s];\n this.raiseRecoverable(this.undefinedExports[n].start, \"Export '\" + n + \"' is not defined\");\n }\n return this.adaptDirectivePrologue(t.body), this.next(), this.options.ecmaVersion >= 6 && (t.sourceType = this.options.sourceType), this.finishNode(t, \"Program\");\n};\n\nvar z = {\n kind: \"loop\"\n},\n H = {\n kind: \"switch\"\n};\nW.isLet = function (t) {\n if (this.options.ecmaVersion < 6 || !this.isContextual(\"let\")) return !1;\n w.lastIndex = this.pos;\n var e = w.exec(this.input),\n i = this.pos + e[0].length,\n r = this.input.charCodeAt(i);\n if (91 === r) return !0;\n if (t) return !1;\n if (123 === r) return !0;\n\n if (l(r, !0)) {\n for (var n = i + 1; u(this.input.charCodeAt(n), !0);) {\n ++n;\n }\n\n var a = this.input.slice(i, n);\n if (!s.test(a)) return !0;\n }\n\n return !1;\n}, W.isAsyncFunction = function () {\n if (this.options.ecmaVersion < 8 || !this.isContextual(\"async\")) return !1;\n w.lastIndex = this.pos;\n var t = w.exec(this.input),\n e = this.pos + t[0].length;\n return !(b.test(this.input.slice(this.pos, e)) || \"function\" !== this.input.slice(e, e + 8) || e + 8 !== this.input.length && u(this.input.charAt(e + 8)));\n}, W.parseStatement = function (t, e, i) {\n var s,\n r = this.type,\n n = this.startNode();\n\n switch (this.isLet(t) && (r = x._var, s = \"let\"), r) {\n case x._break:\n case x._continue:\n return this.parseBreakContinueStatement(n, r.keyword);\n\n case x._debugger:\n return this.parseDebuggerStatement(n);\n\n case x._do:\n return this.parseDoStatement(n);\n\n case x._for:\n return this.parseForStatement(n);\n\n case x._function:\n return t && (this.strict || \"if\" !== t && \"label\" !== t) && this.options.ecmaVersion >= 6 && this.unexpected(), this.parseFunctionStatement(n, !1, !t);\n\n case x._class:\n return t && this.unexpected(), this.parseClass(n, !0);\n\n case x._if:\n return this.parseIfStatement(n);\n\n case x._return:\n return this.parseReturnStatement(n);\n\n case x._switch:\n return this.parseSwitchStatement(n);\n\n case x._throw:\n return this.parseThrowStatement(n);\n\n case x._try:\n return this.parseTryStatement(n);\n\n case x._const:\n case x._var:\n return s = s || this.value, t && \"var\" !== s && this.unexpected(), this.parseVarStatement(n, s);\n\n case x._while:\n return this.parseWhileStatement(n);\n\n case x._with:\n return this.parseWithStatement(n);\n\n case x.braceL:\n return this.parseBlock(!0, n);\n\n case x.semi:\n return this.parseEmptyStatement(n);\n\n case x._export:\n case x._import:\n return this.options.allowImportExportEverywhere || (e || this.raise(this.start, \"'import' and 'export' may only appear at the top level\"), this.inModule || this.raise(this.start, \"'import' and 'export' may appear only with 'sourceType: module'\")), r === x._import ? this.parseImport(n) : this.parseExport(n, i);\n\n default:\n if (this.isAsyncFunction()) return t && this.unexpected(), this.next(), this.parseFunctionStatement(n, !0, !t);\n var a = this.value,\n o = this.parseExpression();\n return r === x.name && \"Identifier\" === o.type && this.eat(x.colon) ? this.parseLabeledStatement(n, a, o, t) : this.parseExpressionStatement(n, o);\n }\n}, W.parseBreakContinueStatement = function (t, e) {\n var i = \"break\" === e;\n this.next(), this.eat(x.semi) || this.insertSemicolon() ? t.label = null : this.type !== x.name ? this.unexpected() : (t.label = this.parseIdent(), this.semicolon());\n\n for (var s = 0; s < this.labels.length; ++s) {\n var r = this.labels[s];\n\n if (null == t.label || r.name === t.label.name) {\n if (null != r.kind && (i || \"loop\" === r.kind)) break;\n if (t.label && i) break;\n }\n }\n\n return s === this.labels.length && this.raise(t.start, \"Unsyntactic \" + e), this.finishNode(t, i ? \"BreakStatement\" : \"ContinueStatement\");\n}, W.parseDebuggerStatement = function (t) {\n return this.next(), this.semicolon(), this.finishNode(t, \"DebuggerStatement\");\n}, W.parseDoStatement = function (t) {\n return this.next(), this.labels.push(z), t.body = this.parseStatement(\"do\"), this.labels.pop(), this.expect(x._while), t.test = this.parseParenExpression(), this.options.ecmaVersion >= 6 ? this.eat(x.semi) : this.semicolon(), this.finishNode(t, \"DoWhileStatement\");\n}, W.parseForStatement = function (t) {\n this.next();\n var e = this.options.ecmaVersion >= 9 && (this.inAsync || !this.inFunction && this.options.allowAwaitOutsideFunction) && this.eatContextual(\"await\") ? this.lastTokStart : -1;\n if (this.labels.push(z), this.enterScope(0), this.expect(x.parenL), this.type === x.semi) return e > -1 && this.unexpected(e), this.parseFor(t, null);\n var i = this.isLet();\n\n if (this.type === x._var || this.type === x._const || i) {\n var s = this.startNode(),\n r = i ? \"let\" : this.value;\n return this.next(), this.parseVar(s, !0, r), this.finishNode(s, \"VariableDeclaration\"), !(this.type === x._in || this.options.ecmaVersion >= 6 && this.isContextual(\"of\")) || 1 !== s.declarations.length || \"var\" !== r && s.declarations[0].init ? (e > -1 && this.unexpected(e), this.parseFor(t, s)) : (this.options.ecmaVersion >= 9 && (this.type === x._in ? e > -1 && this.unexpected(e) : t.await = e > -1), this.parseForIn(t, s));\n }\n\n var n = new J(),\n a = this.parseExpression(!0, n);\n return this.type === x._in || this.options.ecmaVersion >= 6 && this.isContextual(\"of\") ? (this.options.ecmaVersion >= 9 && (this.type === x._in ? e > -1 && this.unexpected(e) : t.await = e > -1), this.toAssignable(a, !1, n), this.checkLVal(a), this.parseForIn(t, a)) : (this.checkExpressionErrors(n, !0), e > -1 && this.unexpected(e), this.parseFor(t, a));\n}, W.parseFunctionStatement = function (t, e, i) {\n return this.next(), this.parseFunction(t, Q | (i ? 0 : K), !1, e);\n}, W.parseIfStatement = function (t) {\n return this.next(), t.test = this.parseParenExpression(), t.consequent = this.parseStatement(\"if\"), t.alternate = this.eat(x._else) ? this.parseStatement(\"if\") : null, this.finishNode(t, \"IfStatement\");\n}, W.parseReturnStatement = function (t) {\n return this.inFunction || this.options.allowReturnOutsideFunction || this.raise(this.start, \"'return' outside of function\"), this.next(), this.eat(x.semi) || this.insertSemicolon() ? t.argument = null : (t.argument = this.parseExpression(), this.semicolon()), this.finishNode(t, \"ReturnStatement\");\n}, W.parseSwitchStatement = function (t) {\n var e;\n this.next(), t.discriminant = this.parseParenExpression(), t.cases = [], this.expect(x.braceL), this.labels.push(H), this.enterScope(0);\n\n for (var i = !1; this.type !== x.braceR;) {\n if (this.type === x._case || this.type === x._default) {\n var s = this.type === x._case;\n e && this.finishNode(e, \"SwitchCase\"), t.cases.push(e = this.startNode()), e.consequent = [], this.next(), s ? e.test = this.parseExpression() : (i && this.raiseRecoverable(this.lastTokStart, \"Multiple default clauses\"), i = !0, e.test = null), this.expect(x.colon);\n } else e || this.unexpected(), e.consequent.push(this.parseStatement(null));\n }\n\n return this.exitScope(), e && this.finishNode(e, \"SwitchCase\"), this.next(), this.labels.pop(), this.finishNode(t, \"SwitchStatement\");\n}, W.parseThrowStatement = function (t) {\n return this.next(), b.test(this.input.slice(this.lastTokEnd, this.start)) && this.raise(this.lastTokEnd, \"Illegal newline after throw\"), t.argument = this.parseExpression(), this.semicolon(), this.finishNode(t, \"ThrowStatement\");\n};\nvar G = [];\nW.parseTryStatement = function (t) {\n if (this.next(), t.block = this.parseBlock(), t.handler = null, this.type === x._catch) {\n var e = this.startNode();\n\n if (this.next(), this.eat(x.parenL)) {\n e.param = this.parseBindingAtom();\n var i = \"Identifier\" === e.param.type;\n this.enterScope(i ? 32 : 0), this.checkLVal(e.param, i ? 4 : 2), this.expect(x.parenR);\n } else this.options.ecmaVersion < 10 && this.unexpected(), e.param = null, this.enterScope(0);\n\n e.body = this.parseBlock(!1), this.exitScope(), t.handler = this.finishNode(e, \"CatchClause\");\n }\n\n return t.finalizer = this.eat(x._finally) ? this.parseBlock() : null, t.handler || t.finalizer || this.raise(t.start, \"Missing catch or finally clause\"), this.finishNode(t, \"TryStatement\");\n}, W.parseVarStatement = function (t, e) {\n return this.next(), this.parseVar(t, !1, e), this.semicolon(), this.finishNode(t, \"VariableDeclaration\");\n}, W.parseWhileStatement = function (t) {\n return this.next(), t.test = this.parseParenExpression(), this.labels.push(z), t.body = this.parseStatement(\"while\"), this.labels.pop(), this.finishNode(t, \"WhileStatement\");\n}, W.parseWithStatement = function (t) {\n return this.strict && this.raise(this.start, \"'with' in strict mode\"), this.next(), t.object = this.parseParenExpression(), t.body = this.parseStatement(\"with\"), this.finishNode(t, \"WithStatement\");\n}, W.parseEmptyStatement = function (t) {\n return this.next(), this.finishNode(t, \"EmptyStatement\");\n}, W.parseLabeledStatement = function (t, e, i, s) {\n for (var r = 0, n = this.labels; r < n.length; r += 1) {\n n[r].name === e && this.raise(i.start, \"Label '\" + e + \"' is already declared\");\n }\n\n for (var a = this.type.isLoop ? \"loop\" : this.type === x._switch ? \"switch\" : null, o = this.labels.length - 1; o >= 0; o--) {\n var p = this.labels[o];\n if (p.statementStart !== t.start) break;\n p.statementStart = this.start, p.kind = a;\n }\n\n return this.labels.push({\n name: e,\n kind: a,\n statementStart: this.start\n }), t.body = this.parseStatement(s ? -1 === s.indexOf(\"label\") ? s + \"label\" : s : \"label\"), this.labels.pop(), t.label = i, this.finishNode(t, \"LabeledStatement\");\n}, W.parseExpressionStatement = function (t, e) {\n return t.expression = e, this.semicolon(), this.finishNode(t, \"ExpressionStatement\");\n}, W.parseBlock = function (t, e) {\n for (void 0 === t && (t = !0), void 0 === e && (e = this.startNode()), e.body = [], this.expect(x.braceL), t && this.enterScope(0); !this.eat(x.braceR);) {\n var i = this.parseStatement(null);\n e.body.push(i);\n }\n\n return t && this.exitScope(), this.finishNode(e, \"BlockStatement\");\n}, W.parseFor = function (t, e) {\n return t.init = e, this.expect(x.semi), t.test = this.type === x.semi ? null : this.parseExpression(), this.expect(x.semi), t.update = this.type === x.parenR ? null : this.parseExpression(), this.expect(x.parenR), t.body = this.parseStatement(\"for\"), this.exitScope(), this.labels.pop(), this.finishNode(t, \"ForStatement\");\n}, W.parseForIn = function (t, e) {\n var i = this.type === x._in ? \"ForInStatement\" : \"ForOfStatement\";\n return this.next(), \"ForInStatement\" === i && (\"AssignmentPattern\" === e.type || \"VariableDeclaration\" === e.type && null != e.declarations[0].init && (this.strict || \"Identifier\" !== e.declarations[0].id.type)) && this.raise(e.start, \"Invalid assignment in for-in loop head\"), t.left = e, t.right = \"ForInStatement\" === i ? this.parseExpression() : this.parseMaybeAssign(), this.expect(x.parenR), t.body = this.parseStatement(\"for\"), this.exitScope(), this.labels.pop(), this.finishNode(t, i);\n}, W.parseVar = function (t, e, i) {\n for (t.declarations = [], t.kind = i;;) {\n var s = this.startNode();\n if (this.parseVarId(s, i), this.eat(x.eq) ? s.init = this.parseMaybeAssign(e) : \"const\" !== i || this.type === x._in || this.options.ecmaVersion >= 6 && this.isContextual(\"of\") ? \"Identifier\" === s.id.type || e && (this.type === x._in || this.isContextual(\"of\")) ? s.init = null : this.raise(this.lastTokEnd, \"Complex binding patterns require an initialization value\") : this.unexpected(), t.declarations.push(this.finishNode(s, \"VariableDeclarator\")), !this.eat(x.comma)) break;\n }\n\n return t;\n}, W.parseVarId = function (t, e) {\n \"const\" !== e && \"let\" !== e || !this.isContextual(\"let\") || this.raiseRecoverable(this.start, \"let is disallowed as a lexically bound name\"), t.id = this.parseBindingAtom(), this.checkLVal(t.id, \"var\" === e ? 1 : 2, !1);\n};\nvar Q = 1,\n K = 2;\nW.parseFunction = function (t, e, i, s) {\n this.initFunction(t), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !s) && (this.type === x.star && e & K && this.unexpected(), t.generator = this.eat(x.star)), this.options.ecmaVersion >= 8 && (t.async = !!s), e & Q && (t.id = 4 & e && this.type !== x.name ? null : this.parseIdent(), !t.id || e & K || this.checkLVal(t.id, this.strict || t.generator || t.async ? this.treatFunctionsAsVar ? 1 : 2 : 3));\n var r = this.yieldPos,\n n = this.awaitPos,\n a = this.awaitIdentPos;\n return this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(F(t.async, t.generator)), e & Q || (t.id = this.type === x.name ? this.parseIdent() : null), this.parseFunctionParams(t), this.parseFunctionBody(t, i, !1), this.yieldPos = r, this.awaitPos = n, this.awaitIdentPos = a, this.finishNode(t, e & Q ? \"FunctionDeclaration\" : \"FunctionExpression\");\n}, W.parseFunctionParams = function (t) {\n this.expect(x.parenL), t.params = this.parseBindingList(x.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams();\n}, W.parseClass = function (t, e) {\n this.next();\n var i = this.strict;\n this.strict = !0, this.parseClassId(t, e), this.parseClassSuper(t);\n var s = this.startNode(),\n r = !1;\n\n for (s.body = [], this.expect(x.braceL); !this.eat(x.braceR);) {\n var n = this.parseClassElement(null !== t.superClass);\n n && (s.body.push(n), \"MethodDefinition\" === n.type && \"constructor\" === n.kind && (r && this.raise(n.start, \"Duplicate constructor in the same class\"), r = !0));\n }\n\n return t.body = this.finishNode(s, \"ClassBody\"), this.strict = i, this.finishNode(t, e ? \"ClassDeclaration\" : \"ClassExpression\");\n}, W.parseClassElement = function (t) {\n var e = this;\n if (this.eat(x.semi)) return null;\n\n var i = this.startNode(),\n s = function s(t, _s) {\n void 0 === _s && (_s = !1);\n var r = e.start,\n n = e.startLoc;\n return !(!e.eatContextual(t) || (e.type === x.parenL || _s && e.canInsertSemicolon()) && (i.key && e.unexpected(), i.computed = !1, i.key = e.startNodeAt(r, n), i.key.name = t, e.finishNode(i.key, \"Identifier\"), 1));\n };\n\n i.kind = \"method\", i.static = s(\"static\");\n var r = this.eat(x.star),\n n = !1;\n r || (this.options.ecmaVersion >= 8 && s(\"async\", !0) ? (n = !0, r = this.options.ecmaVersion >= 9 && this.eat(x.star)) : s(\"get\") ? i.kind = \"get\" : s(\"set\") && (i.kind = \"set\")), i.key || this.parsePropertyName(i);\n var a = i.key,\n o = !1;\n return i.computed || i.static || !(\"Identifier\" === a.type && \"constructor\" === a.name || \"Literal\" === a.type && \"constructor\" === a.value) ? i.static && \"Identifier\" === a.type && \"prototype\" === a.name && this.raise(a.start, \"Classes may not have a static property named prototype\") : (\"method\" !== i.kind && this.raise(a.start, \"Constructor can't have get/set modifier\"), r && this.raise(a.start, \"Constructor can't be a generator\"), n && this.raise(a.start, \"Constructor can't be an async method\"), i.kind = \"constructor\", o = t), this.parseClassMethod(i, r, n, o), \"get\" === i.kind && 0 !== i.value.params.length && this.raiseRecoverable(i.value.start, \"getter should have no params\"), \"set\" === i.kind && 1 !== i.value.params.length && this.raiseRecoverable(i.value.start, \"setter should have exactly one param\"), \"set\" === i.kind && \"RestElement\" === i.value.params[0].type && this.raiseRecoverable(i.value.params[0].start, \"Setter cannot use rest params\"), i;\n}, W.parseClassMethod = function (t, e, i, s) {\n return t.value = this.parseMethod(e, i, s), this.finishNode(t, \"MethodDefinition\");\n}, W.parseClassId = function (t, e) {\n this.type === x.name ? (t.id = this.parseIdent(), e && this.checkLVal(t.id, 2, !1)) : (!0 === e && this.unexpected(), t.id = null);\n}, W.parseClassSuper = function (t) {\n t.superClass = this.eat(x._extends) ? this.parseExprSubscripts() : null;\n}, W.parseExport = function (t, e) {\n if (this.next(), this.eat(x.star)) return this.expectContextual(\"from\"), this.type !== x.string && this.unexpected(), t.source = this.parseExprAtom(), this.semicolon(), this.finishNode(t, \"ExportAllDeclaration\");\n\n if (this.eat(x._default)) {\n var i;\n\n if (this.checkExport(e, \"default\", this.lastTokStart), this.type === x._function || (i = this.isAsyncFunction())) {\n var s = this.startNode();\n this.next(), i && this.next(), t.declaration = this.parseFunction(s, 4 | Q, !1, i);\n } else if (this.type === x._class) {\n var r = this.startNode();\n t.declaration = this.parseClass(r, \"nullableID\");\n } else t.declaration = this.parseMaybeAssign(), this.semicolon();\n\n return this.finishNode(t, \"ExportDefaultDeclaration\");\n }\n\n if (this.shouldParseExportStatement()) t.declaration = this.parseStatement(null), \"VariableDeclaration\" === t.declaration.type ? this.checkVariableExport(e, t.declaration.declarations) : this.checkExport(e, t.declaration.id.name, t.declaration.id.start), t.specifiers = [], t.source = null;else {\n if (t.declaration = null, t.specifiers = this.parseExportSpecifiers(e), this.eatContextual(\"from\")) this.type !== x.string && this.unexpected(), t.source = this.parseExprAtom();else {\n for (var n = 0, a = t.specifiers; n < a.length; n += 1) {\n var o = a[n];\n this.checkUnreserved(o.local), this.checkLocalExport(o.local);\n }\n\n t.source = null;\n }\n this.semicolon();\n }\n return this.finishNode(t, \"ExportNamedDeclaration\");\n}, W.checkExport = function (t, e, i) {\n t && (I(t, e) && this.raiseRecoverable(i, \"Duplicate export '\" + e + \"'\"), t[e] = !0);\n}, W.checkPatternExport = function (t, e) {\n var i = e.type;\n if (\"Identifier\" === i) this.checkExport(t, e.name, e.start);else if (\"ObjectPattern\" === i) for (var s = 0, r = e.properties; s < r.length; s += 1) {\n this.checkPatternExport(t, r[s]);\n } else if (\"ArrayPattern\" === i) for (var n = 0, a = e.elements; n < a.length; n += 1) {\n var o = a[n];\n o && this.checkPatternExport(t, o);\n } else \"Property\" === i ? this.checkPatternExport(t, e.value) : \"AssignmentPattern\" === i ? this.checkPatternExport(t, e.left) : \"RestElement\" === i ? this.checkPatternExport(t, e.argument) : \"ParenthesizedExpression\" === i && this.checkPatternExport(t, e.expression);\n}, W.checkVariableExport = function (t, e) {\n if (t) for (var i = 0, s = e; i < s.length; i += 1) {\n this.checkPatternExport(t, s[i].id);\n }\n}, W.shouldParseExportStatement = function () {\n return \"var\" === this.type.keyword || \"const\" === this.type.keyword || \"class\" === this.type.keyword || \"function\" === this.type.keyword || this.isLet() || this.isAsyncFunction();\n}, W.parseExportSpecifiers = function (t) {\n var e = [],\n i = !0;\n\n for (this.expect(x.braceL); !this.eat(x.braceR);) {\n if (i) i = !1;else if (this.expect(x.comma), this.afterTrailingComma(x.braceR)) break;\n var s = this.startNode();\n s.local = this.parseIdent(!0), s.exported = this.eatContextual(\"as\") ? this.parseIdent(!0) : s.local, this.checkExport(t, s.exported.name, s.exported.start), e.push(this.finishNode(s, \"ExportSpecifier\"));\n }\n\n return e;\n}, W.parseImport = function (t) {\n return this.next(), this.type === x.string ? (t.specifiers = G, t.source = this.parseExprAtom()) : (t.specifiers = this.parseImportSpecifiers(), this.expectContextual(\"from\"), t.source = this.type === x.string ? this.parseExprAtom() : this.unexpected()), this.semicolon(), this.finishNode(t, \"ImportDeclaration\");\n}, W.parseImportSpecifiers = function () {\n var t = [],\n e = !0;\n\n if (this.type === x.name) {\n var i = this.startNode();\n if (i.local = this.parseIdent(), this.checkLVal(i.local, 2), t.push(this.finishNode(i, \"ImportDefaultSpecifier\")), !this.eat(x.comma)) return t;\n }\n\n if (this.type === x.star) {\n var s = this.startNode();\n return this.next(), this.expectContextual(\"as\"), s.local = this.parseIdent(), this.checkLVal(s.local, 2), t.push(this.finishNode(s, \"ImportNamespaceSpecifier\")), t;\n }\n\n for (this.expect(x.braceL); !this.eat(x.braceR);) {\n if (e) e = !1;else if (this.expect(x.comma), this.afterTrailingComma(x.braceR)) break;\n var r = this.startNode();\n r.imported = this.parseIdent(!0), this.eatContextual(\"as\") ? r.local = this.parseIdent() : (this.checkUnreserved(r.imported), r.local = r.imported), this.checkLVal(r.local, 2), t.push(this.finishNode(r, \"ImportSpecifier\"));\n }\n\n return t;\n}, W.adaptDirectivePrologue = function (t) {\n for (var e = 0; e < t.length && this.isDirectiveCandidate(t[e]); ++e) {\n t[e].directive = t[e].expression.raw.slice(1, -1);\n }\n}, W.isDirectiveCandidate = function (t) {\n return \"ExpressionStatement\" === t.type && \"Literal\" === t.expression.type && \"string\" == typeof t.expression.value && ('\"' === this.input[t.start] || \"'\" === this.input[t.start]);\n};\nvar $ = M.prototype;\n$.toAssignable = function (t, e, i) {\n if (this.options.ecmaVersion >= 6 && t) switch (t.type) {\n case \"Identifier\":\n this.inAsync && \"await\" === t.name && this.raise(t.start, \"Cannot use 'await' as identifier inside an async function\");\n break;\n\n case \"ObjectPattern\":\n case \"ArrayPattern\":\n case \"RestElement\":\n break;\n\n case \"ObjectExpression\":\n t.type = \"ObjectPattern\", i && this.checkPatternErrors(i, !0);\n\n for (var s = 0, r = t.properties; s < r.length; s += 1) {\n var n = r[s];\n this.toAssignable(n, e), \"RestElement\" !== n.type || \"ArrayPattern\" !== n.argument.type && \"ObjectPattern\" !== n.argument.type || this.raise(n.argument.start, \"Unexpected token\");\n }\n\n break;\n\n case \"Property\":\n \"init\" !== t.kind && this.raise(t.key.start, \"Object pattern can't contain getter or setter\"), this.toAssignable(t.value, e);\n break;\n\n case \"ArrayExpression\":\n t.type = \"ArrayPattern\", i && this.checkPatternErrors(i, !0), this.toAssignableList(t.elements, e);\n break;\n\n case \"SpreadElement\":\n t.type = \"RestElement\", this.toAssignable(t.argument, e), \"AssignmentPattern\" === t.argument.type && this.raise(t.argument.start, \"Rest elements cannot have a default value\");\n break;\n\n case \"AssignmentExpression\":\n \"=\" !== t.operator && this.raise(t.left.end, \"Only '=' operator can be used for specifying default value.\"), t.type = \"AssignmentPattern\", delete t.operator, this.toAssignable(t.left, e);\n\n case \"AssignmentPattern\":\n break;\n\n case \"ParenthesizedExpression\":\n this.toAssignable(t.expression, e, i);\n break;\n\n case \"MemberExpression\":\n if (!e) break;\n\n default:\n this.raise(t.start, \"Assigning to rvalue\");\n } else i && this.checkPatternErrors(i, !0);\n return t;\n}, $.toAssignableList = function (t, e) {\n for (var i = t.length, s = 0; s < i; s++) {\n var r = t[s];\n r && this.toAssignable(r, e);\n }\n\n if (i) {\n var n = t[i - 1];\n 6 === this.options.ecmaVersion && e && n && \"RestElement\" === n.type && \"Identifier\" !== n.argument.type && this.unexpected(n.argument.start);\n }\n\n return t;\n}, $.parseSpread = function (t) {\n var e = this.startNode();\n return this.next(), e.argument = this.parseMaybeAssign(!1, t), this.finishNode(e, \"SpreadElement\");\n}, $.parseRestBinding = function () {\n var t = this.startNode();\n return this.next(), 6 === this.options.ecmaVersion && this.type !== x.name && this.unexpected(), t.argument = this.parseBindingAtom(), this.finishNode(t, \"RestElement\");\n}, $.parseBindingAtom = function () {\n if (this.options.ecmaVersion >= 6) switch (this.type) {\n case x.bracketL:\n var t = this.startNode();\n return this.next(), t.elements = this.parseBindingList(x.bracketR, !0, !0), this.finishNode(t, \"ArrayPattern\");\n\n case x.braceL:\n return this.parseObj(!0);\n }\n return this.parseIdent();\n}, $.parseBindingList = function (t, e, i) {\n for (var s = [], r = !0; !this.eat(t);) {\n if (r ? r = !1 : this.expect(x.comma), e && this.type === x.comma) s.push(null);else {\n if (i && this.afterTrailingComma(t)) break;\n\n if (this.type === x.ellipsis) {\n var n = this.parseRestBinding();\n this.parseBindingListItem(n), s.push(n), this.type === x.comma && this.raise(this.start, \"Comma is not permitted after the rest element\"), this.expect(t);\n break;\n }\n\n var a = this.parseMaybeDefault(this.start, this.startLoc);\n this.parseBindingListItem(a), s.push(a);\n }\n }\n\n return s;\n}, $.parseBindingListItem = function (t) {\n return t;\n}, $.parseMaybeDefault = function (t, e, i) {\n if (i = i || this.parseBindingAtom(), this.options.ecmaVersion < 6 || !this.eat(x.eq)) return i;\n var s = this.startNodeAt(t, e);\n return s.left = i, s.right = this.parseMaybeAssign(), this.finishNode(s, \"AssignmentPattern\");\n}, $.checkLVal = function (t, e, i) {\n switch (void 0 === e && (e = 0), t.type) {\n case \"Identifier\":\n this.strict && this.reservedWordsStrictBind.test(t.name) && this.raiseRecoverable(t.start, (e ? \"Binding \" : \"Assigning to \") + t.name + \" in strict mode\"), i && (I(i, t.name) && this.raiseRecoverable(t.start, \"Argument name clash\"), i[t.name] = !0), 0 !== e && 5 !== e && this.declareName(t.name, e, t.start);\n break;\n\n case \"MemberExpression\":\n e && this.raiseRecoverable(t.start, \"Binding member expression\");\n break;\n\n case \"ObjectPattern\":\n for (var s = 0, r = t.properties; s < r.length; s += 1) {\n this.checkLVal(r[s], e, i);\n }\n\n break;\n\n case \"Property\":\n this.checkLVal(t.value, e, i);\n break;\n\n case \"ArrayPattern\":\n for (var n = 0, a = t.elements; n < a.length; n += 1) {\n var o = a[n];\n o && this.checkLVal(o, e, i);\n }\n\n break;\n\n case \"AssignmentPattern\":\n this.checkLVal(t.left, e, i);\n break;\n\n case \"RestElement\":\n this.checkLVal(t.argument, e, i);\n break;\n\n case \"ParenthesizedExpression\":\n this.checkLVal(t.expression, e, i);\n break;\n\n default:\n this.raise(t.start, (e ? \"Binding\" : \"Assigning to\") + \" rvalue\");\n }\n};\nvar Y = M.prototype;\nY.checkPropClash = function (t, e, i) {\n if (!(this.options.ecmaVersion >= 9 && \"SpreadElement\" === t.type || this.options.ecmaVersion >= 6 && (t.computed || t.method || t.shorthand))) {\n var s,\n r = t.key;\n\n switch (r.type) {\n case \"Identifier\":\n s = r.name;\n break;\n\n case \"Literal\":\n s = String(r.value);\n break;\n\n default:\n return;\n }\n\n var n = t.kind;\n if (this.options.ecmaVersion >= 6) \"__proto__\" === s && \"init\" === n && (e.proto && (i && i.doubleProto < 0 ? i.doubleProto = r.start : this.raiseRecoverable(r.start, \"Redefinition of __proto__ property\")), e.proto = !0);else {\n var a = e[s = \"$\" + s];\n a ? (\"init\" === n ? this.strict && a.init || a.get || a.set : a.init || a[n]) && this.raiseRecoverable(r.start, \"Redefinition of property\") : a = e[s] = {\n init: !1,\n get: !1,\n set: !1\n }, a[n] = !0;\n }\n }\n}, Y.parseExpression = function (t, e) {\n var i = this.start,\n s = this.startLoc,\n r = this.parseMaybeAssign(t, e);\n\n if (this.type === x.comma) {\n var n = this.startNodeAt(i, s);\n\n for (n.expressions = [r]; this.eat(x.comma);) {\n n.expressions.push(this.parseMaybeAssign(t, e));\n }\n\n return this.finishNode(n, \"SequenceExpression\");\n }\n\n return r;\n}, Y.parseMaybeAssign = function (t, e, i) {\n if (this.isContextual(\"yield\")) {\n if (this.inGenerator) return this.parseYield(t);\n this.exprAllowed = !1;\n }\n\n var s = !1,\n r = -1,\n n = -1,\n a = -1;\n e ? (r = e.parenthesizedAssign, n = e.trailingComma, a = e.shorthandAssign, e.parenthesizedAssign = e.trailingComma = e.shorthandAssign = -1) : (e = new J(), s = !0);\n var o = this.start,\n p = this.startLoc;\n this.type !== x.parenL && this.type !== x.name || (this.potentialArrowAt = this.start);\n var h = this.parseMaybeConditional(t, e);\n\n if (i && (h = i.call(this, h, o, p)), this.type.isAssign) {\n var c = this.startNodeAt(o, p);\n return c.operator = this.value, c.left = this.type === x.eq ? this.toAssignable(h, !1, e) : h, s || J.call(e), e.shorthandAssign = -1, this.checkLVal(h), this.next(), c.right = this.parseMaybeAssign(t), this.finishNode(c, \"AssignmentExpression\");\n }\n\n return s && this.checkExpressionErrors(e, !0), r > -1 && (e.parenthesizedAssign = r), n > -1 && (e.trailingComma = n), a > -1 && (e.shorthandAssign = a), h;\n}, Y.parseMaybeConditional = function (t, e) {\n var i = this.start,\n s = this.startLoc,\n r = this.parseExprOps(t, e);\n if (this.checkExpressionErrors(e)) return r;\n\n if (this.eat(x.question)) {\n var n = this.startNodeAt(i, s);\n return n.test = r, n.consequent = this.parseMaybeAssign(), this.expect(x.colon), n.alternate = this.parseMaybeAssign(t), this.finishNode(n, \"ConditionalExpression\");\n }\n\n return r;\n}, Y.parseExprOps = function (t, e) {\n var i = this.start,\n s = this.startLoc,\n r = this.parseMaybeUnary(e, !1);\n return this.checkExpressionErrors(e) ? r : r.start === i && \"ArrowFunctionExpression\" === r.type ? r : this.parseExprOp(r, i, s, -1, t);\n}, Y.parseExprOp = function (t, e, i, s, r) {\n var n = this.type.binop;\n\n if (null != n && (!r || this.type !== x._in) && n > s) {\n var a = this.type === x.logicalOR || this.type === x.logicalAND,\n o = this.value;\n this.next();\n var p = this.start,\n h = this.startLoc,\n c = this.parseExprOp(this.parseMaybeUnary(null, !1), p, h, n, r),\n l = this.buildBinary(e, i, t, c, o, a);\n return this.parseExprOp(l, e, i, s, r);\n }\n\n return t;\n}, Y.buildBinary = function (t, e, i, s, r, n) {\n var a = this.startNodeAt(t, e);\n return a.left = i, a.operator = r, a.right = s, this.finishNode(a, n ? \"LogicalExpression\" : \"BinaryExpression\");\n}, Y.parseMaybeUnary = function (t, e) {\n var i,\n s = this.start,\n r = this.startLoc;\n if (this.isContextual(\"await\") && (this.inAsync || !this.inFunction && this.options.allowAwaitOutsideFunction)) i = this.parseAwait(), e = !0;else if (this.type.prefix) {\n var n = this.startNode(),\n a = this.type === x.incDec;\n n.operator = this.value, n.prefix = !0, this.next(), n.argument = this.parseMaybeUnary(null, !0), this.checkExpressionErrors(t, !0), a ? this.checkLVal(n.argument) : this.strict && \"delete\" === n.operator && \"Identifier\" === n.argument.type ? this.raiseRecoverable(n.start, \"Deleting local variable in strict mode\") : e = !0, i = this.finishNode(n, a ? \"UpdateExpression\" : \"UnaryExpression\");\n } else {\n if (i = this.parseExprSubscripts(t), this.checkExpressionErrors(t)) return i;\n\n for (; this.type.postfix && !this.canInsertSemicolon();) {\n var o = this.startNodeAt(s, r);\n o.operator = this.value, o.prefix = !1, o.argument = i, this.checkLVal(i), this.next(), i = this.finishNode(o, \"UpdateExpression\");\n }\n }\n return !e && this.eat(x.starstar) ? this.buildBinary(s, r, i, this.parseMaybeUnary(null, !1), \"**\", !1) : i;\n}, Y.parseExprSubscripts = function (t) {\n var e = this.start,\n i = this.startLoc,\n s = this.parseExprAtom(t),\n r = \"ArrowFunctionExpression\" === s.type && \")\" !== this.input.slice(this.lastTokStart, this.lastTokEnd);\n if (this.checkExpressionErrors(t) || r) return s;\n var n = this.parseSubscripts(s, e, i);\n return t && \"MemberExpression\" === n.type && (t.parenthesizedAssign >= n.start && (t.parenthesizedAssign = -1), t.parenthesizedBind >= n.start && (t.parenthesizedBind = -1)), n;\n}, Y.parseSubscripts = function (t, e, i, s) {\n for (var r = this.options.ecmaVersion >= 8 && \"Identifier\" === t.type && \"async\" === t.name && this.lastTokEnd === t.end && !this.canInsertSemicolon() && \"async\" === this.input.slice(t.start, t.end);;) {\n var n = this.parseSubscript(t, e, i, s, r);\n if (n === t || \"ArrowFunctionExpression\" === n.type) return n;\n t = n;\n }\n}, Y.parseSubscript = function (t, e, i, s, r) {\n var n = this.eat(x.bracketL);\n\n if (n || this.eat(x.dot)) {\n var a = this.startNodeAt(e, i);\n a.object = t, a.property = n ? this.parseExpression() : this.parseIdent(!0), a.computed = !!n, n && this.expect(x.bracketR), t = this.finishNode(a, \"MemberExpression\");\n } else if (!s && this.eat(x.parenL)) {\n var o = new J(),\n p = this.yieldPos,\n h = this.awaitPos,\n c = this.awaitIdentPos;\n this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0;\n var l = this.parseExprList(x.parenR, this.options.ecmaVersion >= 8, !1, o);\n if (r && !this.canInsertSemicolon() && this.eat(x.arrow)) return this.checkPatternErrors(o, !1), this.checkYieldAwaitInDefaultParams(), this.awaitIdentPos > 0 && this.raise(this.awaitIdentPos, \"Cannot use 'await' as identifier inside an async function\"), this.yieldPos = p, this.awaitPos = h, this.awaitIdentPos = c, this.parseArrowExpression(this.startNodeAt(e, i), l, !0);\n this.checkExpressionErrors(o, !0), this.yieldPos = p || this.yieldPos, this.awaitPos = h || this.awaitPos, this.awaitIdentPos = c || this.awaitIdentPos;\n var u = this.startNodeAt(e, i);\n u.callee = t, u.arguments = l, t = this.finishNode(u, \"CallExpression\");\n } else if (this.type === x.backQuote) {\n var d = this.startNodeAt(e, i);\n d.tag = t, d.quasi = this.parseTemplate({\n isTagged: !0\n }), t = this.finishNode(d, \"TaggedTemplateExpression\");\n }\n\n return t;\n}, Y.parseExprAtom = function (t) {\n this.type === x.slash && this.readRegexp();\n var e,\n i = this.potentialArrowAt === this.start;\n\n switch (this.type) {\n case x._super:\n return this.allowSuper || this.raise(this.start, \"'super' keyword outside a method\"), e = this.startNode(), this.next(), this.type !== x.parenL || this.allowDirectSuper || this.raise(e.start, \"super() call outside constructor of a subclass\"), this.type !== x.dot && this.type !== x.bracketL && this.type !== x.parenL && this.unexpected(), this.finishNode(e, \"Super\");\n\n case x._this:\n return e = this.startNode(), this.next(), this.finishNode(e, \"ThisExpression\");\n\n case x.name:\n var s = this.start,\n r = this.startLoc,\n n = this.containsEsc,\n a = this.parseIdent(!1);\n if (this.options.ecmaVersion >= 8 && !n && \"async\" === a.name && !this.canInsertSemicolon() && this.eat(x._function)) return this.parseFunction(this.startNodeAt(s, r), 0, !1, !0);\n\n if (i && !this.canInsertSemicolon()) {\n if (this.eat(x.arrow)) return this.parseArrowExpression(this.startNodeAt(s, r), [a], !1);\n if (this.options.ecmaVersion >= 8 && \"async\" === a.name && this.type === x.name && !n) return a = this.parseIdent(!1), !this.canInsertSemicolon() && this.eat(x.arrow) || this.unexpected(), this.parseArrowExpression(this.startNodeAt(s, r), [a], !0);\n }\n\n return a;\n\n case x.regexp:\n var o = this.value;\n return (e = this.parseLiteral(o.value)).regex = {\n pattern: o.pattern,\n flags: o.flags\n }, e;\n\n case x.num:\n case x.string:\n return this.parseLiteral(this.value);\n\n case x._null:\n case x._true:\n case x._false:\n return (e = this.startNode()).value = this.type === x._null ? null : this.type === x._true, e.raw = this.type.keyword, this.next(), this.finishNode(e, \"Literal\");\n\n case x.parenL:\n var p = this.start,\n h = this.parseParenAndDistinguishExpression(i);\n return t && (t.parenthesizedAssign < 0 && !this.isSimpleAssignTarget(h) && (t.parenthesizedAssign = p), t.parenthesizedBind < 0 && (t.parenthesizedBind = p)), h;\n\n case x.bracketL:\n return e = this.startNode(), this.next(), e.elements = this.parseExprList(x.bracketR, !0, !0, t), this.finishNode(e, \"ArrayExpression\");\n\n case x.braceL:\n return this.parseObj(!1, t);\n\n case x._function:\n return e = this.startNode(), this.next(), this.parseFunction(e, 0);\n\n case x._class:\n return this.parseClass(this.startNode(), !1);\n\n case x._new:\n return this.parseNew();\n\n case x.backQuote:\n return this.parseTemplate();\n\n default:\n this.unexpected();\n }\n}, Y.parseLiteral = function (t) {\n var e = this.startNode();\n return e.value = t, e.raw = this.input.slice(this.start, this.end), this.next(), this.finishNode(e, \"Literal\");\n}, Y.parseParenExpression = function () {\n this.expect(x.parenL);\n var t = this.parseExpression();\n return this.expect(x.parenR), t;\n}, Y.parseParenAndDistinguishExpression = function (t) {\n var e,\n i = this.start,\n s = this.startLoc,\n r = this.options.ecmaVersion >= 8;\n\n if (this.options.ecmaVersion >= 6) {\n this.next();\n var n,\n a = this.start,\n o = this.startLoc,\n p = [],\n h = !0,\n c = !1,\n l = new J(),\n u = this.yieldPos,\n d = this.awaitPos;\n\n for (this.yieldPos = 0, this.awaitPos = 0; this.type !== x.parenR;) {\n if (h ? h = !1 : this.expect(x.comma), r && this.afterTrailingComma(x.parenR, !0)) {\n c = !0;\n break;\n }\n\n if (this.type === x.ellipsis) {\n n = this.start, p.push(this.parseParenItem(this.parseRestBinding())), this.type === x.comma && this.raise(this.start, \"Comma is not permitted after the rest element\");\n break;\n }\n\n p.push(this.parseMaybeAssign(!1, l, this.parseParenItem));\n }\n\n var f = this.start,\n m = this.startLoc;\n if (this.expect(x.parenR), t && !this.canInsertSemicolon() && this.eat(x.arrow)) return this.checkPatternErrors(l, !1), this.checkYieldAwaitInDefaultParams(), this.yieldPos = u, this.awaitPos = d, this.parseParenArrowList(i, s, p);\n p.length && !c || this.unexpected(this.lastTokStart), n && this.unexpected(n), this.checkExpressionErrors(l, !0), this.yieldPos = u || this.yieldPos, this.awaitPos = d || this.awaitPos, p.length > 1 ? ((e = this.startNodeAt(a, o)).expressions = p, this.finishNodeAt(e, \"SequenceExpression\", f, m)) : e = p[0];\n } else e = this.parseParenExpression();\n\n if (this.options.preserveParens) {\n var g = this.startNodeAt(i, s);\n return g.expression = e, this.finishNode(g, \"ParenthesizedExpression\");\n }\n\n return e;\n}, Y.parseParenItem = function (t) {\n return t;\n}, Y.parseParenArrowList = function (t, e, i) {\n return this.parseArrowExpression(this.startNodeAt(t, e), i);\n};\nvar Z = [];\nY.parseNew = function () {\n var t = this.startNode(),\n e = this.parseIdent(!0);\n\n if (this.options.ecmaVersion >= 6 && this.eat(x.dot)) {\n t.meta = e;\n var i = this.containsEsc;\n return t.property = this.parseIdent(!0), (\"target\" !== t.property.name || i) && this.raiseRecoverable(t.property.start, \"The only valid meta property for new is new.target\"), this.inNonArrowFunction() || this.raiseRecoverable(t.start, \"new.target can only be used in functions\"), this.finishNode(t, \"MetaProperty\");\n }\n\n var s = this.start,\n r = this.startLoc;\n return t.callee = this.parseSubscripts(this.parseExprAtom(), s, r, !0), t.arguments = this.eat(x.parenL) ? this.parseExprList(x.parenR, this.options.ecmaVersion >= 8, !1) : Z, this.finishNode(t, \"NewExpression\");\n}, Y.parseTemplateElement = function (t) {\n var e = t.isTagged,\n i = this.startNode();\n return this.type === x.invalidTemplate ? (e || this.raiseRecoverable(this.start, \"Bad escape sequence in untagged template literal\"), i.value = {\n raw: this.value,\n cooked: null\n }) : i.value = {\n raw: this.input.slice(this.start, this.end).replace(/\\r\\n?/g, \"\\n\"),\n cooked: this.value\n }, this.next(), i.tail = this.type === x.backQuote, this.finishNode(i, \"TemplateElement\");\n}, Y.parseTemplate = function (t) {\n void 0 === t && (t = {});\n var e = t.isTagged;\n void 0 === e && (e = !1);\n var i = this.startNode();\n this.next(), i.expressions = [];\n var s = this.parseTemplateElement({\n isTagged: e\n });\n\n for (i.quasis = [s]; !s.tail;) {\n this.type === x.eof && this.raise(this.pos, \"Unterminated template literal\"), this.expect(x.dollarBraceL), i.expressions.push(this.parseExpression()), this.expect(x.braceR), i.quasis.push(s = this.parseTemplateElement({\n isTagged: e\n }));\n }\n\n return this.next(), this.finishNode(i, \"TemplateLiteral\");\n}, Y.isAsyncProp = function (t) {\n return !t.computed && \"Identifier\" === t.key.type && \"async\" === t.key.name && (this.type === x.name || this.type === x.num || this.type === x.string || this.type === x.bracketL || this.type.keyword || this.options.ecmaVersion >= 9 && this.type === x.star) && !b.test(this.input.slice(this.lastTokEnd, this.start));\n}, Y.parseObj = function (t, e) {\n var i = this.startNode(),\n s = !0,\n r = {};\n\n for (i.properties = [], this.next(); !this.eat(x.braceR);) {\n if (s) s = !1;else if (this.expect(x.comma), this.afterTrailingComma(x.braceR)) break;\n var n = this.parseProperty(t, e);\n t || this.checkPropClash(n, r, e), i.properties.push(n);\n }\n\n return this.finishNode(i, t ? \"ObjectPattern\" : \"ObjectExpression\");\n}, Y.parseProperty = function (t, e) {\n var i,\n s,\n r,\n n,\n a = this.startNode();\n if (this.options.ecmaVersion >= 9 && this.eat(x.ellipsis)) return t ? (a.argument = this.parseIdent(!1), this.type === x.comma && this.raise(this.start, \"Comma is not permitted after the rest element\"), this.finishNode(a, \"RestElement\")) : (this.type === x.parenL && e && (e.parenthesizedAssign < 0 && (e.parenthesizedAssign = this.start), e.parenthesizedBind < 0 && (e.parenthesizedBind = this.start)), a.argument = this.parseMaybeAssign(!1, e), this.type === x.comma && e && e.trailingComma < 0 && (e.trailingComma = this.start), this.finishNode(a, \"SpreadElement\"));\n this.options.ecmaVersion >= 6 && (a.method = !1, a.shorthand = !1, (t || e) && (r = this.start, n = this.startLoc), t || (i = this.eat(x.star)));\n var o = this.containsEsc;\n return this.parsePropertyName(a), !t && !o && this.options.ecmaVersion >= 8 && !i && this.isAsyncProp(a) ? (s = !0, i = this.options.ecmaVersion >= 9 && this.eat(x.star), this.parsePropertyName(a, e)) : s = !1, this.parsePropertyValue(a, t, i, s, r, n, e, o), this.finishNode(a, \"Property\");\n}, Y.parsePropertyValue = function (t, e, i, s, r, n, a, o) {\n (i || s) && this.type === x.colon && this.unexpected(), this.eat(x.colon) ? (t.value = e ? this.parseMaybeDefault(this.start, this.startLoc) : this.parseMaybeAssign(!1, a), t.kind = \"init\") : this.options.ecmaVersion >= 6 && this.type === x.parenL ? (e && this.unexpected(), t.kind = \"init\", t.method = !0, t.value = this.parseMethod(i, s)) : e || o || !(this.options.ecmaVersion >= 5) || t.computed || \"Identifier\" !== t.key.type || \"get\" !== t.key.name && \"set\" !== t.key.name || this.type === x.comma || this.type === x.braceR ? this.options.ecmaVersion >= 6 && !t.computed && \"Identifier\" === t.key.type ? ((i || s) && this.unexpected(), this.checkUnreserved(t.key), \"await\" !== t.key.name || this.awaitIdentPos || (this.awaitIdentPos = r), t.kind = \"init\", e ? t.value = this.parseMaybeDefault(r, n, t.key) : this.type === x.eq && a ? (a.shorthandAssign < 0 && (a.shorthandAssign = this.start), t.value = this.parseMaybeDefault(r, n, t.key)) : t.value = t.key, t.shorthand = !0) : this.unexpected() : ((i || s) && this.unexpected(), t.kind = t.key.name, this.parsePropertyName(t), t.value = this.parseMethod(!1), t.value.params.length !== (\"get\" === t.kind ? 0 : 1) ? this.raiseRecoverable(t.value.start, \"get\" === t.kind ? \"getter should have no params\" : \"setter should have exactly one param\") : \"set\" === t.kind && \"RestElement\" === t.value.params[0].type && this.raiseRecoverable(t.value.params[0].start, \"Setter cannot use rest params\"));\n}, Y.parsePropertyName = function (t) {\n if (this.options.ecmaVersion >= 6) {\n if (this.eat(x.bracketL)) return t.computed = !0, t.key = this.parseMaybeAssign(), this.expect(x.bracketR), t.key;\n t.computed = !1;\n }\n\n return t.key = this.type === x.num || this.type === x.string ? this.parseExprAtom() : this.parseIdent(!0);\n}, Y.initFunction = function (t) {\n t.id = null, this.options.ecmaVersion >= 6 && (t.generator = t.expression = !1), this.options.ecmaVersion >= 8 && (t.async = !1);\n}, Y.parseMethod = function (t, e, i) {\n var s = this.startNode(),\n r = this.yieldPos,\n n = this.awaitPos,\n a = this.awaitIdentPos;\n return this.initFunction(s), this.options.ecmaVersion >= 6 && (s.generator = t), this.options.ecmaVersion >= 8 && (s.async = !!e), this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(64 | F(e, s.generator) | (i ? 128 : 0)), this.expect(x.parenL), s.params = this.parseBindingList(x.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams(), this.parseFunctionBody(s, !1, !0), this.yieldPos = r, this.awaitPos = n, this.awaitIdentPos = a, this.finishNode(s, \"FunctionExpression\");\n}, Y.parseArrowExpression = function (t, e, i) {\n var s = this.yieldPos,\n r = this.awaitPos,\n n = this.awaitIdentPos;\n return this.enterScope(16 | F(i, !1)), this.initFunction(t), this.options.ecmaVersion >= 8 && (t.async = !!i), this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, t.params = this.toAssignableList(e, !0), this.parseFunctionBody(t, !0, !1), this.yieldPos = s, this.awaitPos = r, this.awaitIdentPos = n, this.finishNode(t, \"ArrowFunctionExpression\");\n}, Y.parseFunctionBody = function (t, e, i) {\n var s = this.strict,\n r = !1;\n if (e && this.type !== x.braceL) t.body = this.parseMaybeAssign(), t.expression = !0, this.checkParams(t, !1);else {\n var n = this.options.ecmaVersion >= 7 && !this.isSimpleParamList(t.params);\n s && !n || (r = this.strictDirective(this.end)) && n && this.raiseRecoverable(t.start, \"Illegal 'use strict' directive in function with non-simple parameter list\");\n var a = this.labels;\n this.labels = [], r && (this.strict = !0), this.checkParams(t, !s && !r && !e && !i && this.isSimpleParamList(t.params)), t.body = this.parseBlock(!1), t.expression = !1, this.adaptDirectivePrologue(t.body.body), this.labels = a;\n }\n this.exitScope(), this.strict && t.id && this.checkLVal(t.id, 5), this.strict = s;\n}, Y.isSimpleParamList = function (t) {\n for (var e = 0, i = t; e < i.length; e += 1) {\n if (\"Identifier\" !== i[e].type) return !1;\n }\n\n return !0;\n}, Y.checkParams = function (t, e) {\n for (var i = {}, s = 0, r = t.params; s < r.length; s += 1) {\n this.checkLVal(r[s], 1, e ? null : i);\n }\n}, Y.parseExprList = function (t, e, i, s) {\n for (var r = [], n = !0; !this.eat(t);) {\n if (n) n = !1;else if (this.expect(x.comma), e && this.afterTrailingComma(t)) break;\n var a = void 0;\n i && this.type === x.comma ? a = null : this.type === x.ellipsis ? (a = this.parseSpread(s), s && this.type === x.comma && s.trailingComma < 0 && (s.trailingComma = this.start)) : a = this.parseMaybeAssign(!1, s), r.push(a);\n }\n\n return r;\n}, Y.checkUnreserved = function (t) {\n var e = t.start,\n i = t.end,\n s = t.name;\n this.inGenerator && \"yield\" === s && this.raiseRecoverable(e, \"Cannot use 'yield' as identifier inside a generator\"), this.inAsync && \"await\" === s && this.raiseRecoverable(e, \"Cannot use 'await' as identifier inside an async function\"), this.keywords.test(s) && this.raise(e, \"Unexpected keyword '\" + s + \"'\"), this.options.ecmaVersion < 6 && -1 !== this.input.slice(e, i).indexOf(\"\\\\\") || (this.strict ? this.reservedWordsStrict : this.reservedWords).test(s) && (this.inAsync || \"await\" !== s || this.raiseRecoverable(e, \"Cannot use keyword 'await' outside an async function\"), this.raiseRecoverable(e, \"The keyword '\" + s + \"' is reserved\"));\n}, Y.parseIdent = function (t, e) {\n var i = this.startNode();\n return t && \"never\" === this.options.allowReserved && (t = !1), this.type === x.name ? i.name = this.value : this.type.keyword ? (i.name = this.type.keyword, \"class\" !== i.name && \"function\" !== i.name || this.lastTokEnd === this.lastTokStart + 1 && 46 === this.input.charCodeAt(this.lastTokStart) || this.context.pop()) : this.unexpected(), this.next(), this.finishNode(i, \"Identifier\"), t || (this.checkUnreserved(i), \"await\" !== i.name || this.awaitIdentPos || (this.awaitIdentPos = i.start)), i;\n}, Y.parseYield = function (t) {\n this.yieldPos || (this.yieldPos = this.start);\n var e = this.startNode();\n return this.next(), this.type === x.semi || this.canInsertSemicolon() || this.type !== x.star && !this.type.startsExpr ? (e.delegate = !1, e.argument = null) : (e.delegate = this.eat(x.star), e.argument = this.parseMaybeAssign(t)), this.finishNode(e, \"YieldExpression\");\n}, Y.parseAwait = function () {\n this.awaitPos || (this.awaitPos = this.start);\n var t = this.startNode();\n return this.next(), t.argument = this.parseMaybeUnary(null, !0), this.finishNode(t, \"AwaitExpression\");\n};\nvar tt = M.prototype;\ntt.raise = function (t, e) {\n var i = R(this.input, t),\n s = new SyntaxError(e += \" (\" + i.line + \":\" + i.column + \")\");\n throw s.pos = t, s.loc = i, s.raisedAt = this.pos, s;\n}, tt.raiseRecoverable = tt.raise, tt.curPosition = function () {\n if (this.options.locations) return new P(this.curLine, this.pos - this.lineStart);\n};\n\nvar et = M.prototype,\n it = function it(t) {\n this.flags = t, this.var = [], this.lexical = [], this.functions = [];\n};\n\net.enterScope = function (t) {\n this.scopeStack.push(new it(t));\n}, et.exitScope = function () {\n this.scopeStack.pop();\n}, et.treatFunctionsAsVarInScope = function (t) {\n return t.flags & j || !this.inModule && 1 & t.flags;\n}, et.declareName = function (t, e, i) {\n var s = !1;\n\n if (2 === e) {\n var r = this.currentScope();\n s = r.lexical.indexOf(t) > -1 || r.functions.indexOf(t) > -1 || r.var.indexOf(t) > -1, r.lexical.push(t), this.inModule && 1 & r.flags && delete this.undefinedExports[t];\n } else if (4 === e) this.currentScope().lexical.push(t);else if (3 === e) {\n var n = this.currentScope();\n s = this.treatFunctionsAsVar ? n.lexical.indexOf(t) > -1 : n.lexical.indexOf(t) > -1 || n.var.indexOf(t) > -1, n.functions.push(t);\n } else for (var a = this.scopeStack.length - 1; a >= 0; --a) {\n var o = this.scopeStack[a];\n\n if (o.lexical.indexOf(t) > -1 && !(32 & o.flags && o.lexical[0] === t) || !this.treatFunctionsAsVarInScope(o) && o.functions.indexOf(t) > -1) {\n s = !0;\n break;\n }\n\n if (o.var.push(t), this.inModule && 1 & o.flags && delete this.undefinedExports[t], o.flags & V) break;\n }\n\n s && this.raiseRecoverable(i, \"Identifier '\" + t + \"' has already been declared\");\n}, et.checkLocalExport = function (t) {\n -1 === this.scopeStack[0].lexical.indexOf(t.name) && -1 === this.scopeStack[0].var.indexOf(t.name) && (this.undefinedExports[t.name] = t);\n}, et.currentScope = function () {\n return this.scopeStack[this.scopeStack.length - 1];\n}, et.currentVarScope = function () {\n for (var t = this.scopeStack.length - 1;; t--) {\n var e = this.scopeStack[t];\n if (e.flags & V) return e;\n }\n}, et.currentThisScope = function () {\n for (var t = this.scopeStack.length - 1;; t--) {\n var e = this.scopeStack[t];\n if (e.flags & V && !(16 & e.flags)) return e;\n }\n};\n\nvar st = function st(t, e, i) {\n this.type = \"\", this.start = e, this.end = 0, t.options.locations && (this.loc = new T(t, i)), t.options.directSourceFile && (this.sourceFile = t.options.directSourceFile), t.options.ranges && (this.range = [e, 0]);\n},\n rt = M.prototype;\n\nfunction nt(t, e, i, s) {\n return t.type = e, t.end = i, this.options.locations && (t.loc.end = s), this.options.ranges && (t.range[1] = i), t;\n}\n\nrt.startNode = function () {\n return new st(this, this.start, this.startLoc);\n}, rt.startNodeAt = function (t, e) {\n return new st(this, t, e);\n}, rt.finishNode = function (t, e) {\n return nt.call(this, t, e, this.lastTokEnd, this.lastTokEndLoc);\n}, rt.finishNodeAt = function (t, e, i, s) {\n return nt.call(this, t, e, i, s);\n};\n\nvar at = function at(t, e, i, s, r) {\n this.token = t, this.isExpr = !!e, this.preserveSpace = !!i, this.override = s, this.generator = !!r;\n},\n ot = {\n b_stat: new at(\"{\", !1),\n b_expr: new at(\"{\", !0),\n b_tmpl: new at(\"${\", !1),\n p_stat: new at(\"(\", !1),\n p_expr: new at(\"(\", !0),\n q_tmpl: new at(\"`\", !0, !0, function (t) {\n return t.tryReadTemplateToken();\n }),\n f_stat: new at(\"function\", !1),\n f_expr: new at(\"function\", !0),\n f_expr_gen: new at(\"function\", !0, !1, null, !0),\n f_gen: new at(\"function\", !1, !1, null, !0)\n},\n pt = M.prototype;\n\npt.initialContext = function () {\n return [ot.b_stat];\n}, pt.braceIsBlock = function (t) {\n var e = this.curContext();\n return e === ot.f_expr || e === ot.f_stat || (t !== x.colon || e !== ot.b_stat && e !== ot.b_expr ? t === x._return || t === x.name && this.exprAllowed ? b.test(this.input.slice(this.lastTokEnd, this.start)) : t === x._else || t === x.semi || t === x.eof || t === x.parenR || t === x.arrow || (t === x.braceL ? e === ot.b_stat : t !== x._var && t !== x._const && t !== x.name && !this.exprAllowed) : !e.isExpr);\n}, pt.inGeneratorContext = function () {\n for (var t = this.context.length - 1; t >= 1; t--) {\n var e = this.context[t];\n if (\"function\" === e.token) return e.generator;\n }\n\n return !1;\n}, pt.updateContext = function (t) {\n var e,\n i = this.type;\n i.keyword && t === x.dot ? this.exprAllowed = !1 : (e = i.updateContext) ? e.call(this, t) : this.exprAllowed = i.beforeExpr;\n}, x.parenR.updateContext = x.braceR.updateContext = function () {\n if (1 !== this.context.length) {\n var t = this.context.pop();\n t === ot.b_stat && \"function\" === this.curContext().token && (t = this.context.pop()), this.exprAllowed = !t.isExpr;\n } else this.exprAllowed = !0;\n}, x.braceL.updateContext = function (t) {\n this.context.push(this.braceIsBlock(t) ? ot.b_stat : ot.b_expr), this.exprAllowed = !0;\n}, x.dollarBraceL.updateContext = function () {\n this.context.push(ot.b_tmpl), this.exprAllowed = !0;\n}, x.parenL.updateContext = function (t) {\n this.context.push(t === x._if || t === x._for || t === x._with || t === x._while ? ot.p_stat : ot.p_expr), this.exprAllowed = !0;\n}, x.incDec.updateContext = function () {}, x._function.updateContext = x._class.updateContext = function (t) {\n !t.beforeExpr || t === x.semi || t === x._else || t === x._return && b.test(this.input.slice(this.lastTokEnd, this.start)) || (t === x.colon || t === x.braceL) && this.curContext() === ot.b_stat ? this.context.push(ot.f_stat) : this.context.push(ot.f_expr), this.exprAllowed = !1;\n}, x.backQuote.updateContext = function () {\n this.curContext() === ot.q_tmpl ? this.context.pop() : this.context.push(ot.q_tmpl), this.exprAllowed = !1;\n}, x.star.updateContext = function (t) {\n if (t === x._function) {\n var e = this.context.length - 1;\n this.context[e] = this.context[e] === ot.f_expr ? ot.f_expr_gen : ot.f_gen;\n }\n\n this.exprAllowed = !0;\n}, x.name.updateContext = function (t) {\n var e = !1;\n this.options.ecmaVersion >= 6 && t !== x.dot && (\"of\" === this.value && !this.exprAllowed || \"yield\" === this.value && this.inGeneratorContext()) && (e = !0), this.exprAllowed = e;\n};\nvar ht = \"ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS\",\n ct = {\n 9: ht,\n 10: ht + \" Extended_Pictographic\"\n},\n lt = \"Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu\",\n ut = \"Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb\",\n dt = {\n 9: ut,\n 10: ut + \" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd\"\n},\n ft = {};\n\nfunction mt(t) {\n var e = ft[t] = {\n binary: N(ct[t] + \" \" + lt),\n nonBinary: {\n General_Category: N(lt),\n Script: N(dt[t])\n }\n };\n e.nonBinary.Script_Extensions = e.nonBinary.Script, e.nonBinary.gc = e.nonBinary.General_Category, e.nonBinary.sc = e.nonBinary.Script, e.nonBinary.scx = e.nonBinary.Script_Extensions;\n}\n\nmt(9), mt(10);\n\nvar gt = M.prototype,\n yt = function yt(t) {\n this.parser = t, this.validFlags = \"gim\" + (t.options.ecmaVersion >= 6 ? \"uy\" : \"\") + (t.options.ecmaVersion >= 9 ? \"s\" : \"\"), this.unicodeProperties = ft[t.options.ecmaVersion >= 10 ? 10 : t.options.ecmaVersion], this.source = \"\", this.flags = \"\", this.start = 0, this.switchU = !1, this.switchN = !1, this.pos = 0, this.lastIntValue = 0, this.lastStringValue = \"\", this.lastAssertionIsQuantifiable = !1, this.numCapturingParens = 0, this.maxBackReference = 0, this.groupNames = [], this.backReferenceNames = [];\n};\n\nfunction vt(t) {\n return t <= 65535 ? String.fromCharCode(t) : (t -= 65536, String.fromCharCode(55296 + (t >> 10), 56320 + (1023 & t)));\n}\n\nfunction xt(t) {\n return 36 === t || t >= 40 && t <= 43 || 46 === t || 63 === t || t >= 91 && t <= 94 || t >= 123 && t <= 125;\n}\n\nfunction bt(t) {\n return t >= 65 && t <= 90 || t >= 97 && t <= 122;\n}\n\nfunction _t(t) {\n return bt(t) || 95 === t;\n}\n\nfunction St(t) {\n return _t(t) || kt(t);\n}\n\nfunction kt(t) {\n return t >= 48 && t <= 57;\n}\n\nfunction wt(t) {\n return t >= 48 && t <= 57 || t >= 65 && t <= 70 || t >= 97 && t <= 102;\n}\n\nfunction Et(t) {\n return t >= 65 && t <= 70 ? t - 65 + 10 : t >= 97 && t <= 102 ? t - 97 + 10 : t - 48;\n}\n\nfunction Ct(t) {\n return t >= 48 && t <= 55;\n}\n\nyt.prototype.reset = function (t, e, i) {\n var s = -1 !== i.indexOf(\"u\");\n this.start = 0 | t, this.source = e + \"\", this.flags = i, this.switchU = s && this.parser.options.ecmaVersion >= 6, this.switchN = s && this.parser.options.ecmaVersion >= 9;\n}, yt.prototype.raise = function (t) {\n this.parser.raiseRecoverable(this.start, \"Invalid regular expression: /\" + this.source + \"/: \" + t);\n}, yt.prototype.at = function (t) {\n var e = this.source,\n i = e.length;\n if (t >= i) return -1;\n var s = e.charCodeAt(t);\n return !this.switchU || s <= 55295 || s >= 57344 || t + 1 >= i ? s : (s << 10) + e.charCodeAt(t + 1) - 56613888;\n}, yt.prototype.nextIndex = function (t) {\n var e = this.source,\n i = e.length;\n if (t >= i) return i;\n var s = e.charCodeAt(t);\n return !this.switchU || s <= 55295 || s >= 57344 || t + 1 >= i ? t + 1 : t + 2;\n}, yt.prototype.current = function () {\n return this.at(this.pos);\n}, yt.prototype.lookahead = function () {\n return this.at(this.nextIndex(this.pos));\n}, yt.prototype.advance = function () {\n this.pos = this.nextIndex(this.pos);\n}, yt.prototype.eat = function (t) {\n return this.current() === t && (this.advance(), !0);\n}, gt.validateRegExpFlags = function (t) {\n for (var e = t.validFlags, i = t.flags, s = 0; s < i.length; s++) {\n var r = i.charAt(s);\n -1 === e.indexOf(r) && this.raise(t.start, \"Invalid regular expression flag\"), i.indexOf(r, s + 1) > -1 && this.raise(t.start, \"Duplicate regular expression flag\");\n }\n}, gt.validateRegExpPattern = function (t) {\n this.regexp_pattern(t), !t.switchN && this.options.ecmaVersion >= 9 && t.groupNames.length > 0 && (t.switchN = !0, this.regexp_pattern(t));\n}, gt.regexp_pattern = function (t) {\n t.pos = 0, t.lastIntValue = 0, t.lastStringValue = \"\", t.lastAssertionIsQuantifiable = !1, t.numCapturingParens = 0, t.maxBackReference = 0, t.groupNames.length = 0, t.backReferenceNames.length = 0, this.regexp_disjunction(t), t.pos !== t.source.length && (t.eat(41) && t.raise(\"Unmatched ')'\"), (t.eat(93) || t.eat(125)) && t.raise(\"Lone quantifier brackets\")), t.maxBackReference > t.numCapturingParens && t.raise(\"Invalid escape\");\n\n for (var e = 0, i = t.backReferenceNames; e < i.length; e += 1) {\n -1 === t.groupNames.indexOf(i[e]) && t.raise(\"Invalid named capture referenced\");\n }\n}, gt.regexp_disjunction = function (t) {\n for (this.regexp_alternative(t); t.eat(124);) {\n this.regexp_alternative(t);\n }\n\n this.regexp_eatQuantifier(t, !0) && t.raise(\"Nothing to repeat\"), t.eat(123) && t.raise(\"Lone quantifier brackets\");\n}, gt.regexp_alternative = function (t) {\n for (; t.pos < t.source.length && this.regexp_eatTerm(t);) {\n ;\n }\n}, gt.regexp_eatTerm = function (t) {\n return this.regexp_eatAssertion(t) ? (t.lastAssertionIsQuantifiable && this.regexp_eatQuantifier(t) && t.switchU && t.raise(\"Invalid quantifier\"), !0) : !(t.switchU ? !this.regexp_eatAtom(t) : !this.regexp_eatExtendedAtom(t)) && (this.regexp_eatQuantifier(t), !0);\n}, gt.regexp_eatAssertion = function (t) {\n var e = t.pos;\n if (t.lastAssertionIsQuantifiable = !1, t.eat(94) || t.eat(36)) return !0;\n\n if (t.eat(92)) {\n if (t.eat(66) || t.eat(98)) return !0;\n t.pos = e;\n }\n\n if (t.eat(40) && t.eat(63)) {\n var i = !1;\n if (this.options.ecmaVersion >= 9 && (i = t.eat(60)), t.eat(61) || t.eat(33)) return this.regexp_disjunction(t), t.eat(41) || t.raise(\"Unterminated group\"), t.lastAssertionIsQuantifiable = !i, !0;\n }\n\n return t.pos = e, !1;\n}, gt.regexp_eatQuantifier = function (t, e) {\n return void 0 === e && (e = !1), !!this.regexp_eatQuantifierPrefix(t, e) && (t.eat(63), !0);\n}, gt.regexp_eatQuantifierPrefix = function (t, e) {\n return t.eat(42) || t.eat(43) || t.eat(63) || this.regexp_eatBracedQuantifier(t, e);\n}, gt.regexp_eatBracedQuantifier = function (t, e) {\n var i = t.pos;\n\n if (t.eat(123)) {\n var s = 0,\n r = -1;\n if (this.regexp_eatDecimalDigits(t) && (s = t.lastIntValue, t.eat(44) && this.regexp_eatDecimalDigits(t) && (r = t.lastIntValue), t.eat(125))) return -1 !== r && r < s && !e && t.raise(\"numbers out of order in {} quantifier\"), !0;\n t.switchU && !e && t.raise(\"Incomplete quantifier\"), t.pos = i;\n }\n\n return !1;\n}, gt.regexp_eatAtom = function (t) {\n return this.regexp_eatPatternCharacters(t) || t.eat(46) || this.regexp_eatReverseSolidusAtomEscape(t) || this.regexp_eatCharacterClass(t) || this.regexp_eatUncapturingGroup(t) || this.regexp_eatCapturingGroup(t);\n}, gt.regexp_eatReverseSolidusAtomEscape = function (t) {\n var e = t.pos;\n\n if (t.eat(92)) {\n if (this.regexp_eatAtomEscape(t)) return !0;\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatUncapturingGroup = function (t) {\n var e = t.pos;\n\n if (t.eat(40)) {\n if (t.eat(63) && t.eat(58)) {\n if (this.regexp_disjunction(t), t.eat(41)) return !0;\n t.raise(\"Unterminated group\");\n }\n\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatCapturingGroup = function (t) {\n if (t.eat(40)) {\n if (this.options.ecmaVersion >= 9 ? this.regexp_groupSpecifier(t) : 63 === t.current() && t.raise(\"Invalid group\"), this.regexp_disjunction(t), t.eat(41)) return t.numCapturingParens += 1, !0;\n t.raise(\"Unterminated group\");\n }\n\n return !1;\n}, gt.regexp_eatExtendedAtom = function (t) {\n return t.eat(46) || this.regexp_eatReverseSolidusAtomEscape(t) || this.regexp_eatCharacterClass(t) || this.regexp_eatUncapturingGroup(t) || this.regexp_eatCapturingGroup(t) || this.regexp_eatInvalidBracedQuantifier(t) || this.regexp_eatExtendedPatternCharacter(t);\n}, gt.regexp_eatInvalidBracedQuantifier = function (t) {\n return this.regexp_eatBracedQuantifier(t, !0) && t.raise(\"Nothing to repeat\"), !1;\n}, gt.regexp_eatSyntaxCharacter = function (t) {\n var e = t.current();\n return !!xt(e) && (t.lastIntValue = e, t.advance(), !0);\n}, gt.regexp_eatPatternCharacters = function (t) {\n for (var e = t.pos, i = 0; -1 !== (i = t.current()) && !xt(i);) {\n t.advance();\n }\n\n return t.pos !== e;\n}, gt.regexp_eatExtendedPatternCharacter = function (t) {\n var e = t.current();\n return !(-1 === e || 36 === e || e >= 40 && e <= 43 || 46 === e || 63 === e || 91 === e || 94 === e || 124 === e || (t.advance(), 0));\n}, gt.regexp_groupSpecifier = function (t) {\n if (t.eat(63)) {\n if (this.regexp_eatGroupName(t)) return -1 !== t.groupNames.indexOf(t.lastStringValue) && t.raise(\"Duplicate capture group name\"), void t.groupNames.push(t.lastStringValue);\n t.raise(\"Invalid group\");\n }\n}, gt.regexp_eatGroupName = function (t) {\n if (t.lastStringValue = \"\", t.eat(60)) {\n if (this.regexp_eatRegExpIdentifierName(t) && t.eat(62)) return !0;\n t.raise(\"Invalid capture group name\");\n }\n\n return !1;\n}, gt.regexp_eatRegExpIdentifierName = function (t) {\n if (t.lastStringValue = \"\", this.regexp_eatRegExpIdentifierStart(t)) {\n for (t.lastStringValue += vt(t.lastIntValue); this.regexp_eatRegExpIdentifierPart(t);) {\n t.lastStringValue += vt(t.lastIntValue);\n }\n\n return !0;\n }\n\n return !1;\n}, gt.regexp_eatRegExpIdentifierStart = function (t) {\n var e = t.pos,\n i = t.current();\n return t.advance(), 92 === i && this.regexp_eatRegExpUnicodeEscapeSequence(t) && (i = t.lastIntValue), function (t) {\n return l(t, !0) || 36 === t || 95 === t;\n }(i) ? (t.lastIntValue = i, !0) : (t.pos = e, !1);\n}, gt.regexp_eatRegExpIdentifierPart = function (t) {\n var e = t.pos,\n i = t.current();\n return t.advance(), 92 === i && this.regexp_eatRegExpUnicodeEscapeSequence(t) && (i = t.lastIntValue), function (t) {\n return u(t, !0) || 36 === t || 95 === t || 8204 === t || 8205 === t;\n }(i) ? (t.lastIntValue = i, !0) : (t.pos = e, !1);\n}, gt.regexp_eatAtomEscape = function (t) {\n return !!(this.regexp_eatBackReference(t) || this.regexp_eatCharacterClassEscape(t) || this.regexp_eatCharacterEscape(t) || t.switchN && this.regexp_eatKGroupName(t)) || (t.switchU && (99 === t.current() && t.raise(\"Invalid unicode escape\"), t.raise(\"Invalid escape\")), !1);\n}, gt.regexp_eatBackReference = function (t) {\n var e = t.pos;\n\n if (this.regexp_eatDecimalEscape(t)) {\n var i = t.lastIntValue;\n if (t.switchU) return i > t.maxBackReference && (t.maxBackReference = i), !0;\n if (i <= t.numCapturingParens) return !0;\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatKGroupName = function (t) {\n if (t.eat(107)) {\n if (this.regexp_eatGroupName(t)) return t.backReferenceNames.push(t.lastStringValue), !0;\n t.raise(\"Invalid named reference\");\n }\n\n return !1;\n}, gt.regexp_eatCharacterEscape = function (t) {\n return this.regexp_eatControlEscape(t) || this.regexp_eatCControlLetter(t) || this.regexp_eatZero(t) || this.regexp_eatHexEscapeSequence(t) || this.regexp_eatRegExpUnicodeEscapeSequence(t) || !t.switchU && this.regexp_eatLegacyOctalEscapeSequence(t) || this.regexp_eatIdentityEscape(t);\n}, gt.regexp_eatCControlLetter = function (t) {\n var e = t.pos;\n\n if (t.eat(99)) {\n if (this.regexp_eatControlLetter(t)) return !0;\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatZero = function (t) {\n return 48 === t.current() && !kt(t.lookahead()) && (t.lastIntValue = 0, t.advance(), !0);\n}, gt.regexp_eatControlEscape = function (t) {\n var e = t.current();\n return 116 === e ? (t.lastIntValue = 9, t.advance(), !0) : 110 === e ? (t.lastIntValue = 10, t.advance(), !0) : 118 === e ? (t.lastIntValue = 11, t.advance(), !0) : 102 === e ? (t.lastIntValue = 12, t.advance(), !0) : 114 === e && (t.lastIntValue = 13, t.advance(), !0);\n}, gt.regexp_eatControlLetter = function (t) {\n var e = t.current();\n return !!bt(e) && (t.lastIntValue = e % 32, t.advance(), !0);\n}, gt.regexp_eatRegExpUnicodeEscapeSequence = function (t) {\n var e,\n i = t.pos;\n\n if (t.eat(117)) {\n if (this.regexp_eatFixedHexDigits(t, 4)) {\n var s = t.lastIntValue;\n\n if (t.switchU && s >= 55296 && s <= 56319) {\n var r = t.pos;\n\n if (t.eat(92) && t.eat(117) && this.regexp_eatFixedHexDigits(t, 4)) {\n var n = t.lastIntValue;\n if (n >= 56320 && n <= 57343) return t.lastIntValue = 1024 * (s - 55296) + (n - 56320) + 65536, !0;\n }\n\n t.pos = r, t.lastIntValue = s;\n }\n\n return !0;\n }\n\n if (t.switchU && t.eat(123) && this.regexp_eatHexDigits(t) && t.eat(125) && (e = t.lastIntValue) >= 0 && e <= 1114111) return !0;\n t.switchU && t.raise(\"Invalid unicode escape\"), t.pos = i;\n }\n\n return !1;\n}, gt.regexp_eatIdentityEscape = function (t) {\n if (t.switchU) return !!this.regexp_eatSyntaxCharacter(t) || !!t.eat(47) && (t.lastIntValue = 47, !0);\n var e = t.current();\n return !(99 === e || t.switchN && 107 === e || (t.lastIntValue = e, t.advance(), 0));\n}, gt.regexp_eatDecimalEscape = function (t) {\n t.lastIntValue = 0;\n var e = t.current();\n\n if (e >= 49 && e <= 57) {\n do {\n t.lastIntValue = 10 * t.lastIntValue + (e - 48), t.advance();\n } while ((e = t.current()) >= 48 && e <= 57);\n\n return !0;\n }\n\n return !1;\n}, gt.regexp_eatCharacterClassEscape = function (t) {\n var e = t.current();\n if (function (t) {\n return 100 === t || 68 === t || 115 === t || 83 === t || 119 === t || 87 === t;\n }(e)) return t.lastIntValue = -1, t.advance(), !0;\n\n if (t.switchU && this.options.ecmaVersion >= 9 && (80 === e || 112 === e)) {\n if (t.lastIntValue = -1, t.advance(), t.eat(123) && this.regexp_eatUnicodePropertyValueExpression(t) && t.eat(125)) return !0;\n t.raise(\"Invalid property name\");\n }\n\n return !1;\n}, gt.regexp_eatUnicodePropertyValueExpression = function (t) {\n var e = t.pos;\n\n if (this.regexp_eatUnicodePropertyName(t) && t.eat(61)) {\n var i = t.lastStringValue;\n if (this.regexp_eatUnicodePropertyValue(t)) return this.regexp_validateUnicodePropertyNameAndValue(t, i, t.lastStringValue), !0;\n }\n\n return t.pos = e, !!this.regexp_eatLoneUnicodePropertyNameOrValue(t) && (this.regexp_validateUnicodePropertyNameOrValue(t, t.lastStringValue), !0);\n}, gt.regexp_validateUnicodePropertyNameAndValue = function (t, e, i) {\n I(t.unicodeProperties.nonBinary, e) || t.raise(\"Invalid property name\"), t.unicodeProperties.nonBinary[e].test(i) || t.raise(\"Invalid property value\");\n}, gt.regexp_validateUnicodePropertyNameOrValue = function (t, e) {\n t.unicodeProperties.binary.test(e) || t.raise(\"Invalid property name\");\n}, gt.regexp_eatUnicodePropertyName = function (t) {\n var e = 0;\n\n for (t.lastStringValue = \"\"; _t(e = t.current());) {\n t.lastStringValue += vt(e), t.advance();\n }\n\n return \"\" !== t.lastStringValue;\n}, gt.regexp_eatUnicodePropertyValue = function (t) {\n var e = 0;\n\n for (t.lastStringValue = \"\"; St(e = t.current());) {\n t.lastStringValue += vt(e), t.advance();\n }\n\n return \"\" !== t.lastStringValue;\n}, gt.regexp_eatLoneUnicodePropertyNameOrValue = function (t) {\n return this.regexp_eatUnicodePropertyValue(t);\n}, gt.regexp_eatCharacterClass = function (t) {\n if (t.eat(91)) {\n if (t.eat(94), this.regexp_classRanges(t), t.eat(93)) return !0;\n t.raise(\"Unterminated character class\");\n }\n\n return !1;\n}, gt.regexp_classRanges = function (t) {\n for (; this.regexp_eatClassAtom(t);) {\n var e = t.lastIntValue;\n\n if (t.eat(45) && this.regexp_eatClassAtom(t)) {\n var i = t.lastIntValue;\n !t.switchU || -1 !== e && -1 !== i || t.raise(\"Invalid character class\"), -1 !== e && -1 !== i && e > i && t.raise(\"Range out of order in character class\");\n }\n }\n}, gt.regexp_eatClassAtom = function (t) {\n var e = t.pos;\n\n if (t.eat(92)) {\n if (this.regexp_eatClassEscape(t)) return !0;\n\n if (t.switchU) {\n var i = t.current();\n (99 === i || Ct(i)) && t.raise(\"Invalid class escape\"), t.raise(\"Invalid escape\");\n }\n\n t.pos = e;\n }\n\n var s = t.current();\n return 93 !== s && (t.lastIntValue = s, t.advance(), !0);\n}, gt.regexp_eatClassEscape = function (t) {\n var e = t.pos;\n if (t.eat(98)) return t.lastIntValue = 8, !0;\n if (t.switchU && t.eat(45)) return t.lastIntValue = 45, !0;\n\n if (!t.switchU && t.eat(99)) {\n if (this.regexp_eatClassControlLetter(t)) return !0;\n t.pos = e;\n }\n\n return this.regexp_eatCharacterClassEscape(t) || this.regexp_eatCharacterEscape(t);\n}, gt.regexp_eatClassControlLetter = function (t) {\n var e = t.current();\n return !(!kt(e) && 95 !== e || (t.lastIntValue = e % 32, t.advance(), 0));\n}, gt.regexp_eatHexEscapeSequence = function (t) {\n var e = t.pos;\n\n if (t.eat(120)) {\n if (this.regexp_eatFixedHexDigits(t, 2)) return !0;\n t.switchU && t.raise(\"Invalid escape\"), t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatDecimalDigits = function (t) {\n var e = t.pos,\n i = 0;\n\n for (t.lastIntValue = 0; kt(i = t.current());) {\n t.lastIntValue = 10 * t.lastIntValue + (i - 48), t.advance();\n }\n\n return t.pos !== e;\n}, gt.regexp_eatHexDigits = function (t) {\n var e = t.pos,\n i = 0;\n\n for (t.lastIntValue = 0; wt(i = t.current());) {\n t.lastIntValue = 16 * t.lastIntValue + Et(i), t.advance();\n }\n\n return t.pos !== e;\n}, gt.regexp_eatLegacyOctalEscapeSequence = function (t) {\n if (this.regexp_eatOctalDigit(t)) {\n var e = t.lastIntValue;\n\n if (this.regexp_eatOctalDigit(t)) {\n var i = t.lastIntValue;\n t.lastIntValue = e <= 3 && this.regexp_eatOctalDigit(t) ? 64 * e + 8 * i + t.lastIntValue : 8 * e + i;\n } else t.lastIntValue = e;\n\n return !0;\n }\n\n return !1;\n}, gt.regexp_eatOctalDigit = function (t) {\n var e = t.current();\n return Ct(e) ? (t.lastIntValue = e - 48, t.advance(), !0) : (t.lastIntValue = 0, !1);\n}, gt.regexp_eatFixedHexDigits = function (t, e) {\n var i = t.pos;\n t.lastIntValue = 0;\n\n for (var s = 0; s < e; ++s) {\n var r = t.current();\n if (!wt(r)) return t.pos = i, !1;\n t.lastIntValue = 16 * t.lastIntValue + Et(r), t.advance();\n }\n\n return !0;\n};\n\nvar At = function At(t) {\n this.type = t.type, this.value = t.value, this.start = t.start, this.end = t.end, t.options.locations && (this.loc = new T(t, t.startLoc, t.endLoc)), t.options.ranges && (this.range = [t.start, t.end]);\n},\n It = M.prototype;\n\nfunction Lt(t) {\n return t <= 65535 ? String.fromCharCode(t) : (t -= 65536, String.fromCharCode(55296 + (t >> 10), 56320 + (1023 & t)));\n}\n\nIt.next = function () {\n this.options.onToken && this.options.onToken(new At(this)), this.lastTokEnd = this.end, this.lastTokStart = this.start, this.lastTokEndLoc = this.endLoc, this.lastTokStartLoc = this.startLoc, this.nextToken();\n}, It.getToken = function () {\n return this.next(), new At(this);\n}, \"undefined\" != typeof Symbol && (It[Symbol.iterator] = function () {\n var t = this;\n return {\n next: function next() {\n var e = t.getToken();\n return {\n done: e.type === x.eof,\n value: e\n };\n }\n };\n}), It.curContext = function () {\n return this.context[this.context.length - 1];\n}, It.nextToken = function () {\n var t = this.curContext();\n return t && t.preserveSpace || this.skipSpace(), this.start = this.pos, this.options.locations && (this.startLoc = this.curPosition()), this.pos >= this.input.length ? this.finishToken(x.eof) : t.override ? t.override(this) : void this.readToken(this.fullCharCodeAtPos());\n}, It.readToken = function (t) {\n return l(t, this.options.ecmaVersion >= 6) || 92 === t ? this.readWord() : this.getTokenFromCode(t);\n}, It.fullCharCodeAtPos = function () {\n var t = this.input.charCodeAt(this.pos);\n return t <= 55295 || t >= 57344 ? t : (t << 10) + this.input.charCodeAt(this.pos + 1) - 56613888;\n}, It.skipBlockComment = function () {\n var t,\n e = this.options.onComment && this.curPosition(),\n i = this.pos,\n s = this.input.indexOf(\"*/\", this.pos += 2);\n if (-1 === s && this.raise(this.pos - 2, \"Unterminated comment\"), this.pos = s + 2, this.options.locations) for (_.lastIndex = i; (t = _.exec(this.input)) && t.index < this.pos;) {\n ++this.curLine, this.lineStart = t.index + t[0].length;\n }\n this.options.onComment && this.options.onComment(!0, this.input.slice(i + 2, s), i, this.pos, e, this.curPosition());\n}, It.skipLineComment = function (t) {\n for (var e = this.pos, i = this.options.onComment && this.curPosition(), s = this.input.charCodeAt(this.pos += t); this.pos < this.input.length && !S(s);) {\n s = this.input.charCodeAt(++this.pos);\n }\n\n this.options.onComment && this.options.onComment(!1, this.input.slice(e + t, this.pos), e, this.pos, i, this.curPosition());\n}, It.skipSpace = function () {\n t: for (; this.pos < this.input.length;) {\n var t = this.input.charCodeAt(this.pos);\n\n switch (t) {\n case 32:\n case 160:\n ++this.pos;\n break;\n\n case 13:\n 10 === this.input.charCodeAt(this.pos + 1) && ++this.pos;\n\n case 10:\n case 8232:\n case 8233:\n ++this.pos, this.options.locations && (++this.curLine, this.lineStart = this.pos);\n break;\n\n case 47:\n switch (this.input.charCodeAt(this.pos + 1)) {\n case 42:\n this.skipBlockComment();\n break;\n\n case 47:\n this.skipLineComment(2);\n break;\n\n default:\n break t;\n }\n\n break;\n\n default:\n if (!(t > 8 && t < 14 || t >= 5760 && k.test(String.fromCharCode(t)))) break t;\n ++this.pos;\n }\n }\n}, It.finishToken = function (t, e) {\n this.end = this.pos, this.options.locations && (this.endLoc = this.curPosition());\n var i = this.type;\n this.type = t, this.value = e, this.updateContext(i);\n}, It.readToken_dot = function () {\n var t = this.input.charCodeAt(this.pos + 1);\n if (t >= 48 && t <= 57) return this.readNumber(!0);\n var e = this.input.charCodeAt(this.pos + 2);\n return this.options.ecmaVersion >= 6 && 46 === t && 46 === e ? (this.pos += 3, this.finishToken(x.ellipsis)) : (++this.pos, this.finishToken(x.dot));\n}, It.readToken_slash = function () {\n var t = this.input.charCodeAt(this.pos + 1);\n return this.exprAllowed ? (++this.pos, this.readRegexp()) : 61 === t ? this.finishOp(x.assign, 2) : this.finishOp(x.slash, 1);\n}, It.readToken_mult_modulo_exp = function (t) {\n var e = this.input.charCodeAt(this.pos + 1),\n i = 1,\n s = 42 === t ? x.star : x.modulo;\n return this.options.ecmaVersion >= 7 && 42 === t && 42 === e && (++i, s = x.starstar, e = this.input.charCodeAt(this.pos + 2)), 61 === e ? this.finishOp(x.assign, i + 1) : this.finishOp(s, i);\n}, It.readToken_pipe_amp = function (t) {\n var e = this.input.charCodeAt(this.pos + 1);\n return e === t ? this.finishOp(124 === t ? x.logicalOR : x.logicalAND, 2) : 61 === e ? this.finishOp(x.assign, 2) : this.finishOp(124 === t ? x.bitwiseOR : x.bitwiseAND, 1);\n}, It.readToken_caret = function () {\n return 61 === this.input.charCodeAt(this.pos + 1) ? this.finishOp(x.assign, 2) : this.finishOp(x.bitwiseXOR, 1);\n}, It.readToken_plus_min = function (t) {\n var e = this.input.charCodeAt(this.pos + 1);\n return e === t ? 45 !== e || this.inModule || 62 !== this.input.charCodeAt(this.pos + 2) || 0 !== this.lastTokEnd && !b.test(this.input.slice(this.lastTokEnd, this.pos)) ? this.finishOp(x.incDec, 2) : (this.skipLineComment(3), this.skipSpace(), this.nextToken()) : 61 === e ? this.finishOp(x.assign, 2) : this.finishOp(x.plusMin, 1);\n}, It.readToken_lt_gt = function (t) {\n var e = this.input.charCodeAt(this.pos + 1),\n i = 1;\n return e === t ? (i = 62 === t && 62 === this.input.charCodeAt(this.pos + 2) ? 3 : 2, 61 === this.input.charCodeAt(this.pos + i) ? this.finishOp(x.assign, i + 1) : this.finishOp(x.bitShift, i)) : 33 !== e || 60 !== t || this.inModule || 45 !== this.input.charCodeAt(this.pos + 2) || 45 !== this.input.charCodeAt(this.pos + 3) ? (61 === e && (i = 2), this.finishOp(x.relational, i)) : (this.skipLineComment(4), this.skipSpace(), this.nextToken());\n}, It.readToken_eq_excl = function (t) {\n var e = this.input.charCodeAt(this.pos + 1);\n return 61 === e ? this.finishOp(x.equality, 61 === this.input.charCodeAt(this.pos + 2) ? 3 : 2) : 61 === t && 62 === e && this.options.ecmaVersion >= 6 ? (this.pos += 2, this.finishToken(x.arrow)) : this.finishOp(61 === t ? x.eq : x.prefix, 1);\n}, It.getTokenFromCode = function (t) {\n switch (t) {\n case 46:\n return this.readToken_dot();\n\n case 40:\n return ++this.pos, this.finishToken(x.parenL);\n\n case 41:\n return ++this.pos, this.finishToken(x.parenR);\n\n case 59:\n return ++this.pos, this.finishToken(x.semi);\n\n case 44:\n return ++this.pos, this.finishToken(x.comma);\n\n case 91:\n return ++this.pos, this.finishToken(x.bracketL);\n\n case 93:\n return ++this.pos, this.finishToken(x.bracketR);\n\n case 123:\n return ++this.pos, this.finishToken(x.braceL);\n\n case 125:\n return ++this.pos, this.finishToken(x.braceR);\n\n case 58:\n return ++this.pos, this.finishToken(x.colon);\n\n case 63:\n return ++this.pos, this.finishToken(x.question);\n\n case 96:\n if (this.options.ecmaVersion < 6) break;\n return ++this.pos, this.finishToken(x.backQuote);\n\n case 48:\n var e = this.input.charCodeAt(this.pos + 1);\n if (120 === e || 88 === e) return this.readRadixNumber(16);\n\n if (this.options.ecmaVersion >= 6) {\n if (111 === e || 79 === e) return this.readRadixNumber(8);\n if (98 === e || 66 === e) return this.readRadixNumber(2);\n }\n\n case 49:\n case 50:\n case 51:\n case 52:\n case 53:\n case 54:\n case 55:\n case 56:\n case 57:\n return this.readNumber(!1);\n\n case 34:\n case 39:\n return this.readString(t);\n\n case 47:\n return this.readToken_slash();\n\n case 37:\n case 42:\n return this.readToken_mult_modulo_exp(t);\n\n case 124:\n case 38:\n return this.readToken_pipe_amp(t);\n\n case 94:\n return this.readToken_caret();\n\n case 43:\n case 45:\n return this.readToken_plus_min(t);\n\n case 60:\n case 62:\n return this.readToken_lt_gt(t);\n\n case 61:\n case 33:\n return this.readToken_eq_excl(t);\n\n case 126:\n return this.finishOp(x.prefix, 1);\n }\n\n this.raise(this.pos, \"Unexpected character '\" + Lt(t) + \"'\");\n}, It.finishOp = function (t, e) {\n var i = this.input.slice(this.pos, this.pos + e);\n return this.pos += e, this.finishToken(t, i);\n}, It.readRegexp = function () {\n for (var t, e, i = this.pos;;) {\n this.pos >= this.input.length && this.raise(i, \"Unterminated regular expression\");\n var s = this.input.charAt(this.pos);\n if (b.test(s) && this.raise(i, \"Unterminated regular expression\"), t) t = !1;else {\n if (\"[\" === s) e = !0;else if (\"]\" === s && e) e = !1;else if (\"/\" === s && !e) break;\n t = \"\\\\\" === s;\n }\n ++this.pos;\n }\n\n var r = this.input.slice(i, this.pos);\n ++this.pos;\n var n = this.pos,\n a = this.readWord1();\n this.containsEsc && this.unexpected(n);\n var o = this.regexpState || (this.regexpState = new yt(this));\n o.reset(i, r, a), this.validateRegExpFlags(o), this.validateRegExpPattern(o);\n var p = null;\n\n try {\n p = new RegExp(r, a);\n } catch (t) {}\n\n return this.finishToken(x.regexp, {\n pattern: r,\n flags: a,\n value: p\n });\n}, It.readInt = function (t, e) {\n for (var i = this.pos, s = 0, r = 0, n = null == e ? Infinity : e; r < n; ++r) {\n var a,\n o = this.input.charCodeAt(this.pos);\n if ((a = o >= 97 ? o - 97 + 10 : o >= 65 ? o - 65 + 10 : o >= 48 && o <= 57 ? o - 48 : Infinity) >= t) break;\n ++this.pos, s = s * t + a;\n }\n\n return this.pos === i || null != e && this.pos - i !== e ? null : s;\n}, It.readRadixNumber = function (t) {\n this.pos += 2;\n var e = this.readInt(t);\n return null == e && this.raise(this.start + 2, \"Expected number in radix \" + t), l(this.fullCharCodeAtPos()) && this.raise(this.pos, \"Identifier directly after number\"), this.finishToken(x.num, e);\n}, It.readNumber = function (t) {\n var e = this.pos;\n t || null !== this.readInt(10) || this.raise(e, \"Invalid number\");\n var i = this.pos - e >= 2 && 48 === this.input.charCodeAt(e);\n i && this.strict && this.raise(e, \"Invalid number\"), i && /[89]/.test(this.input.slice(e, this.pos)) && (i = !1);\n var s = this.input.charCodeAt(this.pos);\n 46 !== s || i || (++this.pos, this.readInt(10), s = this.input.charCodeAt(this.pos)), 69 !== s && 101 !== s || i || (43 !== (s = this.input.charCodeAt(++this.pos)) && 45 !== s || ++this.pos, null === this.readInt(10) && this.raise(e, \"Invalid number\")), l(this.fullCharCodeAtPos()) && this.raise(this.pos, \"Identifier directly after number\");\n var r = this.input.slice(e, this.pos),\n n = i ? parseInt(r, 8) : parseFloat(r);\n return this.finishToken(x.num, n);\n}, It.readCodePoint = function () {\n var t;\n\n if (123 === this.input.charCodeAt(this.pos)) {\n this.options.ecmaVersion < 6 && this.unexpected();\n var e = ++this.pos;\n t = this.readHexChar(this.input.indexOf(\"}\", this.pos) - this.pos), ++this.pos, t > 1114111 && this.invalidStringToken(e, \"Code point out of bounds\");\n } else t = this.readHexChar(4);\n\n return t;\n}, It.readString = function (t) {\n for (var e = \"\", i = ++this.pos;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated string constant\");\n var s = this.input.charCodeAt(this.pos);\n if (s === t) break;\n 92 === s ? (e += this.input.slice(i, this.pos), e += this.readEscapedChar(!1), i = this.pos) : (S(s, this.options.ecmaVersion >= 10) && this.raise(this.start, \"Unterminated string constant\"), ++this.pos);\n }\n\n return e += this.input.slice(i, this.pos++), this.finishToken(x.string, e);\n};\nvar Nt = {};\nIt.tryReadTemplateToken = function () {\n this.inTemplateElement = !0;\n\n try {\n this.readTmplToken();\n } catch (t) {\n if (t !== Nt) throw t;\n this.readInvalidTemplateToken();\n }\n\n this.inTemplateElement = !1;\n}, It.invalidStringToken = function (t, e) {\n if (this.inTemplateElement && this.options.ecmaVersion >= 9) throw Nt;\n this.raise(t, e);\n}, It.readTmplToken = function () {\n for (var t = \"\", e = this.pos;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated template\");\n var i = this.input.charCodeAt(this.pos);\n if (96 === i || 36 === i && 123 === this.input.charCodeAt(this.pos + 1)) return this.pos !== this.start || this.type !== x.template && this.type !== x.invalidTemplate ? (t += this.input.slice(e, this.pos), this.finishToken(x.template, t)) : 36 === i ? (this.pos += 2, this.finishToken(x.dollarBraceL)) : (++this.pos, this.finishToken(x.backQuote));\n if (92 === i) t += this.input.slice(e, this.pos), t += this.readEscapedChar(!0), e = this.pos;else if (S(i)) {\n switch (t += this.input.slice(e, this.pos), ++this.pos, i) {\n case 13:\n 10 === this.input.charCodeAt(this.pos) && ++this.pos;\n\n case 10:\n t += \"\\n\";\n break;\n\n default:\n t += String.fromCharCode(i);\n }\n\n this.options.locations && (++this.curLine, this.lineStart = this.pos), e = this.pos;\n } else ++this.pos;\n }\n}, It.readInvalidTemplateToken = function () {\n for (; this.pos < this.input.length; this.pos++) {\n switch (this.input[this.pos]) {\n case \"\\\\\":\n ++this.pos;\n break;\n\n case \"$\":\n if (\"{\" !== this.input[this.pos + 1]) break;\n\n case \"`\":\n return this.finishToken(x.invalidTemplate, this.input.slice(this.start, this.pos));\n }\n }\n\n this.raise(this.start, \"Unterminated template\");\n}, It.readEscapedChar = function (t) {\n var e = this.input.charCodeAt(++this.pos);\n\n switch (++this.pos, e) {\n case 110:\n return \"\\n\";\n\n case 114:\n return \"\\r\";\n\n case 120:\n return String.fromCharCode(this.readHexChar(2));\n\n case 117:\n return Lt(this.readCodePoint());\n\n case 116:\n return \"\\t\";\n\n case 98:\n return \"\\b\";\n\n case 118:\n return \"\\v\";\n\n case 102:\n return \"\\f\";\n\n case 13:\n 10 === this.input.charCodeAt(this.pos) && ++this.pos;\n\n case 10:\n return this.options.locations && (this.lineStart = this.pos, ++this.curLine), \"\";\n\n default:\n if (e >= 48 && e <= 55) {\n var i = this.input.substr(this.pos - 1, 3).match(/^[0-7]+/)[0],\n s = parseInt(i, 8);\n return s > 255 && (i = i.slice(0, -1), s = parseInt(i, 8)), this.pos += i.length - 1, e = this.input.charCodeAt(this.pos), \"0\" === i && 56 !== e && 57 !== e || !this.strict && !t || this.invalidStringToken(this.pos - 1 - i.length, t ? \"Octal literal in template string\" : \"Octal literal in strict mode\"), String.fromCharCode(s);\n }\n\n return S(e) ? \"\" : String.fromCharCode(e);\n }\n}, It.readHexChar = function (t) {\n var e = this.pos,\n i = this.readInt(16, t);\n return null === i && this.invalidStringToken(e, \"Bad character escape sequence\"), i;\n}, It.readWord1 = function () {\n this.containsEsc = !1;\n\n for (var t = \"\", e = !0, i = this.pos, s = this.options.ecmaVersion >= 6; this.pos < this.input.length;) {\n var r = this.fullCharCodeAtPos();\n if (u(r, s)) this.pos += r <= 65535 ? 1 : 2;else {\n if (92 !== r) break;\n this.containsEsc = !0, t += this.input.slice(i, this.pos);\n var n = this.pos;\n 117 !== this.input.charCodeAt(++this.pos) && this.invalidStringToken(this.pos, \"Expecting Unicode escape sequence \\\\uXXXX\"), ++this.pos;\n var a = this.readCodePoint();\n (e ? l : u)(a, s) || this.invalidStringToken(n, \"Invalid Unicode escape\"), t += Lt(a), i = this.pos;\n }\n e = !1;\n }\n\n return t + this.input.slice(i, this.pos);\n}, It.readWord = function () {\n var t = this.readWord1(),\n e = x.name;\n return this.keywords.test(t) && (this.containsEsc && this.raiseRecoverable(this.start, \"Escape sequence in keyword \" + t), e = y[t]), this.finishToken(e, t);\n};\nvar Pt = {\n quot: '\"',\n amp: \"&\",\n apos: \"'\",\n lt: \"<\",\n gt: \">\",\n nbsp: \" \",\n iexcl: \"¡\",\n cent: \"¢\",\n pound: \"£\",\n curren: \"¤\",\n yen: \"¥\",\n brvbar: \"¦\",\n sect: \"§\",\n uml: \"¨\",\n copy: \"©\",\n ordf: \"ª\",\n laquo: \"«\",\n not: \"¬\",\n shy: \"­\",\n reg: \"®\",\n macr: \"¯\",\n deg: \"°\",\n plusmn: \"±\",\n sup2: \"²\",\n sup3: \"³\",\n acute: \"´\",\n micro: \"µ\",\n para: \"¶\",\n middot: \"·\",\n cedil: \"¸\",\n sup1: \"¹\",\n ordm: \"º\",\n raquo: \"»\",\n frac14: \"¼\",\n frac12: \"½\",\n frac34: \"¾\",\n iquest: \"¿\",\n Agrave: \"À\",\n Aacute: \"Á\",\n Acirc: \"Â\",\n Atilde: \"Ã\",\n Auml: \"Ä\",\n Aring: \"Å\",\n AElig: \"Æ\",\n Ccedil: \"Ç\",\n Egrave: \"È\",\n Eacute: \"É\",\n Ecirc: \"Ê\",\n Euml: \"Ë\",\n Igrave: \"Ì\",\n Iacute: \"Í\",\n Icirc: \"Î\",\n Iuml: \"Ï\",\n ETH: \"Ð\",\n Ntilde: \"Ñ\",\n Ograve: \"Ò\",\n Oacute: \"Ó\",\n Ocirc: \"Ô\",\n Otilde: \"Õ\",\n Ouml: \"Ö\",\n times: \"×\",\n Oslash: \"Ø\",\n Ugrave: \"Ù\",\n Uacute: \"Ú\",\n Ucirc: \"Û\",\n Uuml: \"Ü\",\n Yacute: \"Ý\",\n THORN: \"Þ\",\n szlig: \"ß\",\n agrave: \"à\",\n aacute: \"á\",\n acirc: \"â\",\n atilde: \"ã\",\n auml: \"ä\",\n aring: \"å\",\n aelig: \"æ\",\n ccedil: \"ç\",\n egrave: \"è\",\n eacute: \"é\",\n ecirc: \"ê\",\n euml: \"ë\",\n igrave: \"ì\",\n iacute: \"í\",\n icirc: \"î\",\n iuml: \"ï\",\n eth: \"ð\",\n ntilde: \"ñ\",\n ograve: \"ò\",\n oacute: \"ó\",\n ocirc: \"ô\",\n otilde: \"õ\",\n ouml: \"ö\",\n divide: \"÷\",\n oslash: \"ø\",\n ugrave: \"ù\",\n uacute: \"ú\",\n ucirc: \"û\",\n uuml: \"ü\",\n yacute: \"ý\",\n thorn: \"þ\",\n yuml: \"ÿ\",\n OElig: \"Œ\",\n oelig: \"œ\",\n Scaron: \"Š\",\n scaron: \"š\",\n Yuml: \"Ÿ\",\n fnof: \"ƒ\",\n circ: \"ˆ\",\n tilde: \"˜\",\n Alpha: \"Α\",\n Beta: \"Β\",\n Gamma: \"Γ\",\n Delta: \"Δ\",\n Epsilon: \"Ε\",\n Zeta: \"Ζ\",\n Eta: \"Η\",\n Theta: \"Θ\",\n Iota: \"Ι\",\n Kappa: \"Κ\",\n Lambda: \"Λ\",\n Mu: \"Μ\",\n Nu: \"Ν\",\n Xi: \"Ξ\",\n Omicron: \"Ο\",\n Pi: \"Π\",\n Rho: \"Ρ\",\n Sigma: \"Σ\",\n Tau: \"Τ\",\n Upsilon: \"Υ\",\n Phi: \"Φ\",\n Chi: \"Χ\",\n Psi: \"Ψ\",\n Omega: \"Ω\",\n alpha: \"α\",\n beta: \"β\",\n gamma: \"γ\",\n delta: \"δ\",\n epsilon: \"ε\",\n zeta: \"ζ\",\n eta: \"η\",\n theta: \"θ\",\n iota: \"ι\",\n kappa: \"κ\",\n lambda: \"λ\",\n mu: \"μ\",\n nu: \"ν\",\n xi: \"ξ\",\n omicron: \"ο\",\n pi: \"π\",\n rho: \"ρ\",\n sigmaf: \"ς\",\n sigma: \"σ\",\n tau: \"τ\",\n upsilon: \"υ\",\n phi: \"φ\",\n chi: \"χ\",\n psi: \"ψ\",\n omega: \"ω\",\n thetasym: \"ϑ\",\n upsih: \"ϒ\",\n piv: \"ϖ\",\n ensp: \" \",\n emsp: \" \",\n thinsp: \" \",\n zwnj: \"‌\",\n zwj: \"‍\",\n lrm: \"‎\",\n rlm: \"‏\",\n ndash: \"–\",\n mdash: \"—\",\n lsquo: \"‘\",\n rsquo: \"’\",\n sbquo: \"‚\",\n ldquo: \"“\",\n rdquo: \"”\",\n bdquo: \"„\",\n dagger: \"†\",\n Dagger: \"‡\",\n bull: \"•\",\n hellip: \"…\",\n permil: \"‰\",\n prime: \"′\",\n Prime: \"″\",\n lsaquo: \"‹\",\n rsaquo: \"›\",\n oline: \"‾\",\n frasl: \"⁄\",\n euro: \"€\",\n image: \"ℑ\",\n weierp: \"℘\",\n real: \"ℜ\",\n trade: \"™\",\n alefsym: \"ℵ\",\n larr: \"←\",\n uarr: \"↑\",\n rarr: \"→\",\n darr: \"↓\",\n harr: \"↔\",\n crarr: \"↵\",\n lArr: \"⇐\",\n uArr: \"⇑\",\n rArr: \"⇒\",\n dArr: \"⇓\",\n hArr: \"⇔\",\n forall: \"∀\",\n part: \"∂\",\n exist: \"∃\",\n empty: \"∅\",\n nabla: \"∇\",\n isin: \"∈\",\n notin: \"∉\",\n ni: \"∋\",\n prod: \"∏\",\n sum: \"∑\",\n minus: \"−\",\n lowast: \"∗\",\n radic: \"√\",\n prop: \"∝\",\n infin: \"∞\",\n ang: \"∠\",\n and: \"∧\",\n or: \"∨\",\n cap: \"∩\",\n cup: \"∪\",\n int: \"∫\",\n there4: \"∴\",\n sim: \"∼\",\n cong: \"≅\",\n asymp: \"≈\",\n ne: \"≠\",\n equiv: \"≡\",\n le: \"≤\",\n ge: \"≥\",\n sub: \"⊂\",\n sup: \"⊃\",\n nsub: \"⊄\",\n sube: \"⊆\",\n supe: \"⊇\",\n oplus: \"⊕\",\n otimes: \"⊗\",\n perp: \"⊥\",\n sdot: \"⋅\",\n lceil: \"⌈\",\n rceil: \"⌉\",\n lfloor: \"⌊\",\n rfloor: \"⌋\",\n lang: \"〈\",\n rang: \"〉\",\n loz: \"◊\",\n spades: \"♠\",\n clubs: \"♣\",\n hearts: \"♥\",\n diams: \"♦\"\n},\n Tt = {\n version: \"6.1.1\",\n parse: function parse(t, e) {\n return M.parse(t, e);\n },\n parseExpressionAt: function parseExpressionAt(t, e, i) {\n return M.parseExpressionAt(t, e, i);\n },\n tokenizer: function tokenizer(t, e) {\n return M.tokenizer(t, e);\n },\n Parser: M,\n defaultOptions: O,\n Position: P,\n SourceLocation: T,\n getLineInfo: R,\n Node: st,\n TokenType: d,\n tokTypes: x,\n keywordTypes: y,\n TokContext: at,\n tokContexts: ot,\n isIdentifierChar: u,\n isIdentifierStart: l,\n Token: At,\n isNewLine: S,\n lineBreak: b,\n lineBreakG: _,\n nonASCIIwhitespace: k\n};\nvar Rt = /^[\\da-fA-F]+$/,\n Ot = /^\\d+$/,\n jt = Tt.tokTypes,\n Vt = Tt.TokContext,\n Dt = Tt.tokContexts,\n Bt = Tt.TokenType,\n Ft = Tt.isNewLine,\n Mt = Tt.isIdentifierStart,\n Ut = Tt.isIdentifierChar,\n qt = new Vt(\"...\", !0, !0),\n Wt = {\n jsxName: new Bt(\"jsxName\"),\n jsxText: new Bt(\"jsxText\", {\n beforeExpr: !0\n }),\n jsxTagStart: new Bt(\"jsxTagStart\"),\n jsxTagEnd: new Bt(\"jsxTagEnd\")\n};\n\nfunction zt(t) {\n return t ? \"JSXIdentifier\" === t.type ? t.name : \"JSXNamespacedName\" === t.type ? t.namespace.name + \":\" + t.name.name : \"JSXMemberExpression\" === t.type ? zt(t.object) + \".\" + zt(t.property) : void 0 : t;\n}\n\nWt.jsxTagStart.updateContext = function () {\n this.context.push(Jt), this.context.push(qt), this.exprAllowed = !1;\n}, Wt.jsxTagEnd.updateContext = function (t) {\n var e = this.context.pop();\n e === qt && t === jt.slash || e === Xt ? (this.context.pop(), this.exprAllowed = this.curContext() === Jt) : this.exprAllowed = !0;\n};\n\nvar Ht = function Ht(t) {\n return t = t || {}, function (e) {\n return function (t, e) {\n return /*#__PURE__*/function (_e2) {\n _inherits(_class, _e2);\n\n var _super = _createSuper(_class);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(_class, [{\n key: \"jsx_readToken\",\n value: function jsx_readToken() {\n var t = \"\",\n e = this.pos;\n\n for (;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated JSX contents\");\n\n var _i2 = this.input.charCodeAt(this.pos);\n\n switch (_i2) {\n case 60:\n case 123:\n return this.pos === this.start ? 60 === _i2 && this.exprAllowed ? (++this.pos, this.finishToken(Wt.jsxTagStart)) : this.getTokenFromCode(_i2) : (t += this.input.slice(e, this.pos), this.finishToken(Wt.jsxText, t));\n\n case 38:\n t += this.input.slice(e, this.pos), t += this.jsx_readEntity(), e = this.pos;\n break;\n\n default:\n Ft(_i2) ? (t += this.input.slice(e, this.pos), t += this.jsx_readNewLine(!0), e = this.pos) : ++this.pos;\n }\n }\n }\n }, {\n key: \"jsx_readNewLine\",\n value: function jsx_readNewLine(t) {\n var e,\n i = this.input.charCodeAt(this.pos);\n return ++this.pos, 13 === i && 10 === this.input.charCodeAt(this.pos) ? (++this.pos, e = t ? \"\\n\" : \"\\r\\n\") : e = String.fromCharCode(i), this.options.locations && (++this.curLine, this.lineStart = this.pos), e;\n }\n }, {\n key: \"jsx_readString\",\n value: function jsx_readString(t) {\n var e = \"\",\n i = ++this.pos;\n\n for (;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated string constant\");\n\n var _s2 = this.input.charCodeAt(this.pos);\n\n if (_s2 === t) break;\n 38 === _s2 ? (e += this.input.slice(i, this.pos), e += this.jsx_readEntity(), i = this.pos) : Ft(_s2) ? (e += this.input.slice(i, this.pos), e += this.jsx_readNewLine(!1), i = this.pos) : ++this.pos;\n }\n\n return e += this.input.slice(i, this.pos++), this.finishToken(jt.string, e);\n }\n }, {\n key: \"jsx_readEntity\",\n value: function jsx_readEntity() {\n var t,\n e = \"\",\n i = 0,\n s = this.input[this.pos];\n \"&\" !== s && this.raise(this.pos, \"Entity must start with an ampersand\");\n var r = ++this.pos;\n\n for (; this.pos < this.input.length && i++ < 10;) {\n if (\";\" === (s = this.input[this.pos++])) {\n \"#\" === e[0] ? \"x\" === e[1] ? (e = e.substr(2), Rt.test(e) && (t = String.fromCharCode(parseInt(e, 16)))) : (e = e.substr(1), Ot.test(e) && (t = String.fromCharCode(parseInt(e, 10)))) : t = Pt[e];\n break;\n }\n\n e += s;\n }\n\n return t || (this.pos = r, \"&\");\n }\n }, {\n key: \"jsx_readWord\",\n value: function jsx_readWord() {\n var t,\n e = this.pos;\n\n do {\n t = this.input.charCodeAt(++this.pos);\n } while (Ut(t) || 45 === t);\n\n return this.finishToken(Wt.jsxName, this.input.slice(e, this.pos));\n }\n }, {\n key: \"jsx_parseIdentifier\",\n value: function jsx_parseIdentifier() {\n var t = this.startNode();\n return this.type === Wt.jsxName ? t.name = this.value : this.type.keyword ? t.name = this.type.keyword : this.unexpected(), this.next(), this.finishNode(t, \"JSXIdentifier\");\n }\n }, {\n key: \"jsx_parseNamespacedName\",\n value: function jsx_parseNamespacedName() {\n var e = this.start,\n i = this.startLoc,\n s = this.jsx_parseIdentifier();\n if (!t.allowNamespaces || !this.eat(jt.colon)) return s;\n var r = this.startNodeAt(e, i);\n return r.namespace = s, r.name = this.jsx_parseIdentifier(), this.finishNode(r, \"JSXNamespacedName\");\n }\n }, {\n key: \"jsx_parseElementName\",\n value: function jsx_parseElementName() {\n if (this.type === Wt.jsxTagEnd) return \"\";\n var e = this.start,\n i = this.startLoc,\n s = this.jsx_parseNamespacedName();\n\n for (this.type !== jt.dot || \"JSXNamespacedName\" !== s.type || t.allowNamespacedObjects || this.unexpected(); this.eat(jt.dot);) {\n var _t2 = this.startNodeAt(e, i);\n\n _t2.object = s, _t2.property = this.jsx_parseIdentifier(), s = this.finishNode(_t2, \"JSXMemberExpression\");\n }\n\n return s;\n }\n }, {\n key: \"jsx_parseAttributeValue\",\n value: function jsx_parseAttributeValue() {\n switch (this.type) {\n case jt.braceL:\n var _t3 = this.jsx_parseExpressionContainer();\n\n return \"JSXEmptyExpression\" === _t3.expression.type && this.raise(_t3.start, \"JSX attributes must only be assigned a non-empty expression\"), _t3;\n\n case Wt.jsxTagStart:\n case jt.string:\n return this.parseExprAtom();\n\n default:\n this.raise(this.start, \"JSX value should be either an expression or a quoted JSX text\");\n }\n }\n }, {\n key: \"jsx_parseEmptyExpression\",\n value: function jsx_parseEmptyExpression() {\n var t = this.startNodeAt(this.lastTokEnd, this.lastTokEndLoc);\n return this.finishNodeAt(t, \"JSXEmptyExpression\", this.start, this.startLoc);\n }\n }, {\n key: \"jsx_parseExpressionContainer\",\n value: function jsx_parseExpressionContainer() {\n var t = this.startNode();\n return this.next(), t.expression = this.type === jt.braceR ? this.jsx_parseEmptyExpression() : this.parseExpression(), this.expect(jt.braceR), this.finishNode(t, \"JSXExpressionContainer\");\n }\n }, {\n key: \"jsx_parseAttribute\",\n value: function jsx_parseAttribute() {\n var t = this.startNode();\n return this.eat(jt.braceL) ? (this.expect(jt.ellipsis), t.argument = this.parseMaybeAssign(), this.expect(jt.braceR), this.finishNode(t, \"JSXSpreadAttribute\")) : (t.name = this.jsx_parseNamespacedName(), t.value = this.eat(jt.eq) ? this.jsx_parseAttributeValue() : null, this.finishNode(t, \"JSXAttribute\"));\n }\n }, {\n key: \"jsx_parseOpeningElementAt\",\n value: function jsx_parseOpeningElementAt(t, e) {\n var i = this.startNodeAt(t, e);\n i.attributes = [];\n var s = this.jsx_parseElementName();\n\n for (s && (i.name = s); this.type !== jt.slash && this.type !== Wt.jsxTagEnd;) {\n i.attributes.push(this.jsx_parseAttribute());\n }\n\n return i.selfClosing = this.eat(jt.slash), this.expect(Wt.jsxTagEnd), this.finishNode(i, s ? \"JSXOpeningElement\" : \"JSXOpeningFragment\");\n }\n }, {\n key: \"jsx_parseClosingElementAt\",\n value: function jsx_parseClosingElementAt(t, e) {\n var i = this.startNodeAt(t, e),\n s = this.jsx_parseElementName();\n return s && (i.name = s), this.expect(Wt.jsxTagEnd), this.finishNode(i, s ? \"JSXClosingElement\" : \"JSXClosingFragment\");\n }\n }, {\n key: \"jsx_parseElementAt\",\n value: function jsx_parseElementAt(t, e) {\n var i = this.startNodeAt(t, e),\n s = [],\n r = this.jsx_parseOpeningElementAt(t, e),\n n = null;\n\n if (!r.selfClosing) {\n t: for (;;) {\n switch (this.type) {\n case Wt.jsxTagStart:\n if (t = this.start, e = this.startLoc, this.next(), this.eat(jt.slash)) {\n n = this.jsx_parseClosingElementAt(t, e);\n break t;\n }\n\n s.push(this.jsx_parseElementAt(t, e));\n break;\n\n case Wt.jsxText:\n s.push(this.parseExprAtom());\n break;\n\n case jt.braceL:\n s.push(this.jsx_parseExpressionContainer());\n break;\n\n default:\n this.unexpected();\n }\n }\n\n zt(n.name) !== zt(r.name) && this.raise(n.start, \"Expected corresponding JSX closing tag for <\" + zt(r.name) + \">\");\n }\n\n var a = r.name ? \"Element\" : \"Fragment\";\n return i[\"opening\" + a] = r, i[\"closing\" + a] = n, i.children = s, this.type === jt.relational && \"<\" === this.value && this.raise(this.start, \"Adjacent JSX elements must be wrapped in an enclosing tag\"), this.finishNode(i, \"JSX\" + a);\n }\n }, {\n key: \"jsx_parseText\",\n value: function jsx_parseText(t) {\n var e = this.parseLiteral(t);\n return e.type = \"JSXText\", e;\n }\n }, {\n key: \"jsx_parseElement\",\n value: function jsx_parseElement() {\n var t = this.start,\n e = this.startLoc;\n return this.next(), this.jsx_parseElementAt(t, e);\n }\n }, {\n key: \"parseExprAtom\",\n value: function parseExprAtom(t) {\n return this.type === Wt.jsxText ? this.jsx_parseText(this.value) : this.type === Wt.jsxTagStart ? this.jsx_parseElement() : _get(_getPrototypeOf(_class.prototype), \"parseExprAtom\", this).call(this, t);\n }\n }, {\n key: \"readToken\",\n value: function readToken(t) {\n var e = this.curContext();\n if (e === Jt) return this.jsx_readToken();\n\n if (e === qt || e === Xt) {\n if (Mt(t)) return this.jsx_readWord();\n if (62 == t) return ++this.pos, this.finishToken(Wt.jsxTagEnd);\n if ((34 === t || 39 === t) && e == qt) return this.jsx_readString(t);\n }\n\n return 60 === t && this.exprAllowed && 33 !== this.input.charCodeAt(this.pos + 1) ? (++this.pos, this.finishToken(Wt.jsxTagStart)) : _get(_getPrototypeOf(_class.prototype), \"readToken\", this).call(this, t);\n }\n }, {\n key: \"updateContext\",\n value: function updateContext(t) {\n if (this.type == jt.braceL) {\n var e = this.curContext();\n e == qt ? this.context.push(Dt.b_expr) : e == Jt ? this.context.push(Dt.b_tmpl) : _get(_getPrototypeOf(_class.prototype), \"updateContext\", this).call(this, t), this.exprAllowed = !0;\n } else {\n if (this.type !== jt.slash || t !== Wt.jsxTagStart) return _get(_getPrototypeOf(_class.prototype), \"updateContext\", this).call(this, t);\n this.context.length -= 2, this.context.push(Xt), this.exprAllowed = !1;\n }\n }\n }]);\n\n return _class;\n }(e);\n }({\n allowNamespaces: !1 !== t.allowNamespaces,\n allowNamespacedObjects: !!t.allowNamespacedObjects\n }, e);\n };\n};\n\nHt.tokTypes = Wt;\nvar Gt,\n Qt,\n Kt = (function (t, e) {\n Object.defineProperty(e, \"__esModule\", {\n value: !0\n }), e.DynamicImportKey = void 0;\n\n var i = function () {\n function t(t, e) {\n for (var i = 0; i < e.length; i++) {\n var s = e[i];\n s.enumerable = s.enumerable || !1, s.configurable = !0, \"value\" in s && (s.writable = !0), Object.defineProperty(t, s.key, s);\n }\n }\n\n return function (e, i, s) {\n return i && t(e.prototype, i), s && t(e, s), e;\n };\n }(),\n s = function t(e, i, s) {\n null === e && (e = Function.prototype);\n var r = Object.getOwnPropertyDescriptor(e, i);\n\n if (void 0 === r) {\n var n = Object.getPrototypeOf(e);\n return null === n ? void 0 : t(n, i, s);\n }\n\n if (\"value\" in r) return r.value;\n var a = r.get;\n return void 0 !== a ? a.call(s) : void 0;\n };\n\n e.default = function (t) {\n return function (e) {\n function n() {\n return function (t, e) {\n if (!(t instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n }(this), function (t, e) {\n if (!t) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return !e || \"object\" != typeof e && \"function\" != typeof e ? t : e;\n }(this, (n.__proto__ || Object.getPrototypeOf(n)).apply(this, arguments));\n }\n\n return function (t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function, not \" + typeof e);\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n enumerable: !1,\n writable: !0,\n configurable: !0\n }\n }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);\n }(n, t), i(n, [{\n key: \"parseStatement\",\n value: function value(t, e, i) {\n return this.type === Tt.tokTypes._import && function () {\n return /^(\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*\\(/.test(this.input.slice(this.pos));\n }.call(this) ? this.parseExpressionStatement(this.startNode(), this.parseExpression()) : s(n.prototype.__proto__ || Object.getPrototypeOf(n.prototype), \"parseStatement\", this).call(this, t, e, i);\n }\n }, {\n key: \"parseExprAtom\",\n value: function value(t) {\n return this.type === Tt.tokTypes._import ? function () {\n var t = this.startNode();\n return this.next(), this.type !== Tt.tokTypes.parenL && this.unexpected(), this.finishNode(t, r);\n }.call(this) : s(n.prototype.__proto__ || Object.getPrototypeOf(n.prototype), \"parseExprAtom\", this).call(this, t);\n }\n }]), n;\n }();\n };\n\n var r = e.DynamicImportKey = \"Import\";\n Tt.tokTypes._import.startsExpr = !0;\n}(Gt = {\n exports: {}\n}, Gt.exports), (Qt = Gt.exports) && Qt.__esModule && Object.prototype.hasOwnProperty.call(Qt, \"default\") ? Qt.default : Qt);\nvar $t = /(?:\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*/g,\n Yt = Tt.tokTypes;\n\nfunction Zt(t) {\n if (this.eat(Yt.eq)) {\n var _e3 = this._inFieldValue;\n this._inFieldValue = !0, t.value = this.parseExpression(), this._inFieldValue = _e3;\n } else t.value = null;\n}\n\nfunction te() {\n var t = this.startNode();\n return t.name = this.value, this.next(), this.finishNode(t, \"PrivateName\"), \"never\" == this.options.allowReserved && this.checkUnreserved(t), t;\n}\n\nvar ee = new (0, Tt.TokenType)(\"privateName\");\nvar ie = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\nfunction se(t) {\n var e = \"\";\n t = t < 0 ? -t << 1 | 1 : t << 1;\n\n do {\n var i = 31 & t;\n (t >>= 5) > 0 && (i |= 32), e += ie[i];\n } while (t > 0);\n\n return e;\n}\n\nvar re = function re(t, e, i) {\n this.start = t, this.end = e, this.original = i, this.intro = \"\", this.outro = \"\", this.content = i, this.storeName = !1, this.edited = !1, Object.defineProperties(this, {\n previous: {\n writable: !0,\n value: null\n },\n next: {\n writable: !0,\n value: null\n }\n });\n};\n\nre.prototype.appendLeft = function (t) {\n this.outro += t;\n}, re.prototype.appendRight = function (t) {\n this.intro = this.intro + t;\n}, re.prototype.clone = function () {\n var t = new re(this.start, this.end, this.original);\n return t.intro = this.intro, t.outro = this.outro, t.content = this.content, t.storeName = this.storeName, t.edited = this.edited, t;\n}, re.prototype.contains = function (t) {\n return this.start < t && t < this.end;\n}, re.prototype.eachNext = function (t) {\n for (var e = this; e;) {\n t(e), e = e.next;\n }\n}, re.prototype.eachPrevious = function (t) {\n for (var e = this; e;) {\n t(e), e = e.previous;\n }\n}, re.prototype.edit = function (t, e, i) {\n return this.content = t, i || (this.intro = \"\", this.outro = \"\"), this.storeName = e, this.edited = !0, this;\n}, re.prototype.prependLeft = function (t) {\n this.outro = t + this.outro;\n}, re.prototype.prependRight = function (t) {\n this.intro = t + this.intro;\n}, re.prototype.split = function (t) {\n var e = t - this.start,\n i = this.original.slice(0, e),\n s = this.original.slice(e);\n this.original = i;\n var r = new re(t, this.end, s);\n return r.outro = this.outro, this.outro = \"\", this.end = t, this.edited ? (r.edit(\"\", !1), this.content = \"\") : this.content = i, r.next = this.next, r.next && (r.next.previous = r), r.previous = this, this.next = r, r;\n}, re.prototype.toString = function () {\n return this.intro + this.content + this.outro;\n}, re.prototype.trimEnd = function (t) {\n if (this.outro = this.outro.replace(t, \"\"), this.outro.length) return !0;\n var e = this.content.replace(t, \"\");\n return e.length ? (e !== this.content && this.split(this.start + e.length).edit(\"\", void 0, !0), !0) : (this.edit(\"\", void 0, !0), this.intro = this.intro.replace(t, \"\"), !!this.intro.length || void 0);\n}, re.prototype.trimStart = function (t) {\n if (this.intro = this.intro.replace(t, \"\"), this.intro.length) return !0;\n var e = this.content.replace(t, \"\");\n return e.length ? (e !== this.content && (this.split(this.end - e.length), this.edit(\"\", void 0, !0)), !0) : (this.edit(\"\", void 0, !0), this.outro = this.outro.replace(t, \"\"), !!this.outro.length || void 0);\n};\n\nvar ne = function ne() {\n throw new Error(\"Unsupported environment: `window.btoa` or `Buffer` should be supported.\");\n};\n\n\"undefined\" != typeof window && \"function\" == typeof window.btoa ? ne = function ne(t) {\n return window.btoa(unescape(encodeURIComponent(t)));\n} : \"function\" == typeof Buffer && (ne = function ne(t) {\n return Buffer.from(t, \"utf-8\").toString(\"base64\");\n});\n\nvar ae = function ae(t) {\n this.version = 3, this.file = t.file, this.sources = t.sources, this.sourcesContent = t.sourcesContent, this.names = t.names, this.mappings = function (t) {\n for (var e = 0, i = 0, s = 0, r = 0, n = \"\", a = 0; a < t.length; a++) {\n var o = t[a];\n\n if (a > 0 && (n += \";\"), 0 !== o.length) {\n for (var p = 0, h = [], c = 0, l = o; c < l.length; c++) {\n var u = l[c],\n d = se(u[0] - p);\n p = u[0], u.length > 1 && (d += se(u[1] - e) + se(u[2] - i) + se(u[3] - s), e = u[1], i = u[2], s = u[3]), 5 === u.length && (d += se(u[4] - r), r = u[4]), h.push(d);\n }\n\n n += h.join(\",\");\n }\n }\n\n return n;\n }(t.mappings);\n};\n\nfunction oe(t) {\n var e = t.split(\"\\n\"),\n i = e.filter(function (t) {\n return /^\\t+/.test(t);\n }),\n s = e.filter(function (t) {\n return /^ {2,}/.test(t);\n });\n if (0 === i.length && 0 === s.length) return null;\n if (i.length >= s.length) return \"\\t\";\n var r = s.reduce(function (t, e) {\n var i = /^ +/.exec(e)[0].length;\n return Math.min(i, t);\n }, Infinity);\n return new Array(r + 1).join(\" \");\n}\n\nfunction pe(t, e) {\n var i = t.split(/[\\/\\\\]/),\n s = e.split(/[\\/\\\\]/);\n\n for (i.pop(); i[0] === s[0];) {\n i.shift(), s.shift();\n }\n\n if (i.length) for (var r = i.length; r--;) {\n i[r] = \"..\";\n }\n return i.concat(s).join(\"/\");\n}\n\nae.prototype.toString = function () {\n return JSON.stringify(this);\n}, ae.prototype.toUrl = function () {\n return \"data:application/json;charset=utf-8;base64,\" + ne(this.toString());\n};\nvar he = Object.prototype.toString;\n\nfunction ce(t) {\n for (var e = t.split(\"\\n\"), i = [], s = 0, r = 0; s < e.length; s++) {\n i.push(r), r += e[s].length + 1;\n }\n\n return function (t) {\n for (var e = 0, s = i.length; e < s;) {\n var r = e + s >> 1;\n t < i[r] ? s = r : e = r + 1;\n }\n\n var n = e - 1;\n return {\n line: n,\n column: t - i[n]\n };\n };\n}\n\nvar le = function le(t) {\n this.hires = t, this.generatedCodeLine = 0, this.generatedCodeColumn = 0, this.raw = [], this.rawSegments = this.raw[this.generatedCodeLine] = [], this.pending = null;\n};\n\nle.prototype.addEdit = function (t, e, i, s) {\n if (e.length) {\n var r = [this.generatedCodeColumn, t, i.line, i.column];\n s >= 0 && r.push(s), this.rawSegments.push(r);\n } else this.pending && this.rawSegments.push(this.pending);\n\n this.advance(e), this.pending = null;\n}, le.prototype.addUneditedChunk = function (t, e, i, s, r) {\n for (var n = e.start, a = !0; n < e.end;) {\n (this.hires || a || r[n]) && this.rawSegments.push([this.generatedCodeColumn, t, s.line, s.column]), \"\\n\" === i[n] ? (s.line += 1, s.column = 0, this.generatedCodeLine += 1, this.raw[this.generatedCodeLine] = this.rawSegments = [], this.generatedCodeColumn = 0) : (s.column += 1, this.generatedCodeColumn += 1), n += 1, a = !1;\n }\n\n this.pending = [this.generatedCodeColumn, t, s.line, s.column];\n}, le.prototype.advance = function (t) {\n if (t) {\n var e = t.split(\"\\n\");\n\n if (e.length > 1) {\n for (var i = 0; i < e.length - 1; i++) {\n this.generatedCodeLine++, this.raw[this.generatedCodeLine] = this.rawSegments = [];\n }\n\n this.generatedCodeColumn = 0;\n }\n\n this.generatedCodeColumn += e[e.length - 1].length;\n }\n};\n\nvar ue = \"\\n\",\n de = {\n insertLeft: !1,\n insertRight: !1,\n storeName: !1\n},\n fe = function fe(t, e) {\n void 0 === e && (e = {});\n var i = new re(0, t.length, t);\n Object.defineProperties(this, {\n original: {\n writable: !0,\n value: t\n },\n outro: {\n writable: !0,\n value: \"\"\n },\n intro: {\n writable: !0,\n value: \"\"\n },\n firstChunk: {\n writable: !0,\n value: i\n },\n lastChunk: {\n writable: !0,\n value: i\n },\n lastSearchedChunk: {\n writable: !0,\n value: i\n },\n byStart: {\n writable: !0,\n value: {}\n },\n byEnd: {\n writable: !0,\n value: {}\n },\n filename: {\n writable: !0,\n value: e.filename\n },\n indentExclusionRanges: {\n writable: !0,\n value: e.indentExclusionRanges\n },\n sourcemapLocations: {\n writable: !0,\n value: {}\n },\n storedNames: {\n writable: !0,\n value: {}\n },\n indentStr: {\n writable: !0,\n value: oe(t)\n }\n }), this.byStart[0] = i, this.byEnd[t.length] = i;\n};\n\nfunction me(t) {\n var e = {};\n return Object.keys(t).forEach(function (i) {\n \"parent\" !== i && \"program\" !== i && \"keys\" !== i && \"__wrapped\" !== i && (e[i] = Array.isArray(t[i]) ? t[i].map(me) : t[i] && t[i].toJSON ? t[i].toJSON() : t[i]);\n }), e;\n}\n\nfe.prototype.addSourcemapLocation = function (t) {\n this.sourcemapLocations[t] = !0;\n}, fe.prototype.append = function (t) {\n if (\"string\" != typeof t) throw new TypeError(\"outro content must be a string\");\n return this.outro += t, this;\n}, fe.prototype.appendLeft = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byEnd[t];\n return i ? i.appendLeft(e) : this.intro += e, this;\n}, fe.prototype.appendRight = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byStart[t];\n return i ? i.appendRight(e) : this.outro += e, this;\n}, fe.prototype.clone = function () {\n for (var t = new fe(this.original, {\n filename: this.filename\n }), e = this.firstChunk, i = t.firstChunk = t.lastSearchedChunk = e.clone(); e;) {\n t.byStart[i.start] = i, t.byEnd[i.end] = i;\n var s = e.next,\n r = s && s.clone();\n r && (i.next = r, r.previous = i, i = r), e = s;\n }\n\n return t.lastChunk = i, this.indentExclusionRanges && (t.indentExclusionRanges = this.indentExclusionRanges.slice()), Object.keys(this.sourcemapLocations).forEach(function (e) {\n t.sourcemapLocations[e] = !0;\n }), t;\n}, fe.prototype.generateDecodedMap = function (t) {\n var e = this;\n t = t || {};\n var i = Object.keys(this.storedNames),\n s = new le(t.hires),\n r = ce(this.original);\n return this.intro && s.advance(this.intro), this.firstChunk.eachNext(function (t) {\n var n = r(t.start);\n t.intro.length && s.advance(t.intro), t.edited ? s.addEdit(0, t.content, n, t.storeName ? i.indexOf(t.original) : -1) : s.addUneditedChunk(0, t, e.original, n, e.sourcemapLocations), t.outro.length && s.advance(t.outro);\n }), {\n file: t.file ? t.file.split(/[\\/\\\\]/).pop() : null,\n sources: [t.source ? pe(t.file || \"\", t.source) : null],\n sourcesContent: t.includeContent ? [this.original] : [null],\n names: i,\n mappings: s.raw\n };\n}, fe.prototype.generateMap = function (t) {\n return new ae(this.generateDecodedMap(t));\n}, fe.prototype.getIndentString = function () {\n return null === this.indentStr ? \"\\t\" : this.indentStr;\n}, fe.prototype.indent = function (t, e) {\n var i = /^[^\\r\\n]/gm;\n if (\"[object Object]\" === he.call(t) && (e = t, t = void 0), \"\" === (t = void 0 !== t ? t : this.indentStr || \"\\t\")) return this;\n var s = {};\n (e = e || {}).exclude && (\"number\" == typeof e.exclude[0] ? [e.exclude] : e.exclude).forEach(function (t) {\n for (var e = t[0]; e < t[1]; e += 1) {\n s[e] = !0;\n }\n });\n\n var r = !1 !== e.indentStart,\n n = function n(e) {\n return r ? \"\" + t + e : (r = !0, e);\n };\n\n this.intro = this.intro.replace(i, n);\n\n for (var a = 0, o = this.firstChunk; o;) {\n var p = o.end;\n if (o.edited) s[a] || (o.content = o.content.replace(i, n), o.content.length && (r = \"\\n\" === o.content[o.content.length - 1]));else for (a = o.start; a < p;) {\n if (!s[a]) {\n var h = this.original[a];\n \"\\n\" === h ? r = !0 : \"\\r\" !== h && r && (r = !1, a === o.start ? o.prependRight(t) : (this._splitChunk(o, a), (o = o.next).prependRight(t)));\n }\n\n a += 1;\n }\n a = o.end, o = o.next;\n }\n\n return this.outro = this.outro.replace(i, n), this;\n}, fe.prototype.insert = function () {\n throw new Error(\"magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)\");\n}, fe.prototype.insertLeft = function (t, e) {\n return de.insertLeft || (console.warn(\"magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead\"), de.insertLeft = !0), this.appendLeft(t, e);\n}, fe.prototype.insertRight = function (t, e) {\n return de.insertRight || (console.warn(\"magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead\"), de.insertRight = !0), this.prependRight(t, e);\n}, fe.prototype.move = function (t, e, i) {\n if (i >= t && i <= e) throw new Error(\"Cannot move a selection inside itself\");\n this._split(t), this._split(e), this._split(i);\n var s = this.byStart[t],\n r = this.byEnd[e],\n n = s.previous,\n a = r.next,\n o = this.byStart[i];\n if (!o && r === this.lastChunk) return this;\n var p = o ? o.previous : this.lastChunk;\n return n && (n.next = a), a && (a.previous = n), p && (p.next = s), o && (o.previous = r), s.previous || (this.firstChunk = r.next), r.next || (this.lastChunk = s.previous, this.lastChunk.next = null), s.previous = p, r.next = o || null, p || (this.firstChunk = s), o || (this.lastChunk = r), this;\n}, fe.prototype.overwrite = function (t, e, i, s) {\n if (\"string\" != typeof i) throw new TypeError(\"replacement content must be a string\");\n\n for (; t < 0;) {\n t += this.original.length;\n }\n\n for (; e < 0;) {\n e += this.original.length;\n }\n\n if (e > this.original.length) throw new Error(\"end is out of bounds\");\n if (t === e) throw new Error(\"Cannot overwrite a zero-length range – use appendLeft or prependRight instead\");\n this._split(t), this._split(e), !0 === s && (de.storeName || (console.warn(\"The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string\"), de.storeName = !0), s = {\n storeName: !0\n });\n var r = void 0 !== s && s.storeName,\n n = void 0 !== s && s.contentOnly;\n\n if (r) {\n var a = this.original.slice(t, e);\n this.storedNames[a] = !0;\n }\n\n var o = this.byStart[t],\n p = this.byEnd[e];\n\n if (o) {\n if (e > o.end && o.next !== this.byStart[o.end]) throw new Error(\"Cannot overwrite across a split point\");\n\n if (o.edit(i, r, n), o !== p) {\n for (var h = o.next; h !== p;) {\n h.edit(\"\", !1), h = h.next;\n }\n\n h.edit(\"\", !1);\n }\n } else {\n var c = new re(t, e, \"\").edit(i, r);\n p.next = c, c.previous = p;\n }\n\n return this;\n}, fe.prototype.prepend = function (t) {\n if (\"string\" != typeof t) throw new TypeError(\"outro content must be a string\");\n return this.intro = t + this.intro, this;\n}, fe.prototype.prependLeft = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byEnd[t];\n return i ? i.prependLeft(e) : this.intro = e + this.intro, this;\n}, fe.prototype.prependRight = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byStart[t];\n return i ? i.prependRight(e) : this.outro = e + this.outro, this;\n}, fe.prototype.remove = function (t, e) {\n for (; t < 0;) {\n t += this.original.length;\n }\n\n for (; e < 0;) {\n e += this.original.length;\n }\n\n if (t === e) return this;\n if (t < 0 || e > this.original.length) throw new Error(\"Character is out of bounds\");\n if (t > e) throw new Error(\"end must be greater than start\");\n this._split(t), this._split(e);\n\n for (var i = this.byStart[t]; i;) {\n i.intro = \"\", i.outro = \"\", i.edit(\"\"), i = e > i.end ? this.byStart[i.end] : null;\n }\n\n return this;\n}, fe.prototype.lastChar = function () {\n if (this.outro.length) return this.outro[this.outro.length - 1];\n var t = this.lastChunk;\n\n do {\n if (t.outro.length) return t.outro[t.outro.length - 1];\n if (t.content.length) return t.content[t.content.length - 1];\n if (t.intro.length) return t.intro[t.intro.length - 1];\n } while (t = t.previous);\n\n return this.intro.length ? this.intro[this.intro.length - 1] : \"\";\n}, fe.prototype.lastLine = function () {\n var t = this.outro.lastIndexOf(ue);\n if (-1 !== t) return this.outro.substr(t + 1);\n var e = this.outro,\n i = this.lastChunk;\n\n do {\n if (i.outro.length > 0) {\n if (-1 !== (t = i.outro.lastIndexOf(ue))) return i.outro.substr(t + 1) + e;\n e = i.outro + e;\n }\n\n if (i.content.length > 0) {\n if (-1 !== (t = i.content.lastIndexOf(ue))) return i.content.substr(t + 1) + e;\n e = i.content + e;\n }\n\n if (i.intro.length > 0) {\n if (-1 !== (t = i.intro.lastIndexOf(ue))) return i.intro.substr(t + 1) + e;\n e = i.intro + e;\n }\n } while (i = i.previous);\n\n return -1 !== (t = this.intro.lastIndexOf(ue)) ? this.intro.substr(t + 1) + e : this.intro + e;\n}, fe.prototype.slice = function (t, e) {\n for (void 0 === t && (t = 0), void 0 === e && (e = this.original.length); t < 0;) {\n t += this.original.length;\n }\n\n for (; e < 0;) {\n e += this.original.length;\n }\n\n for (var i = \"\", s = this.firstChunk; s && (s.start > t || s.end <= t);) {\n if (s.start < e && s.end >= e) return i;\n s = s.next;\n }\n\n if (s && s.edited && s.start !== t) throw new Error(\"Cannot use replaced character \" + t + \" as slice start anchor.\");\n\n for (var r = s; s;) {\n !s.intro || r === s && s.start !== t || (i += s.intro);\n var n = s.start < e && s.end >= e;\n if (n && s.edited && s.end !== e) throw new Error(\"Cannot use replaced character \" + e + \" as slice end anchor.\");\n if (i += s.content.slice(r === s ? t - s.start : 0, n ? s.content.length + e - s.end : s.content.length), !s.outro || n && s.end !== e || (i += s.outro), n) break;\n s = s.next;\n }\n\n return i;\n}, fe.prototype.snip = function (t, e) {\n var i = this.clone();\n return i.remove(0, t), i.remove(e, i.original.length), i;\n}, fe.prototype._split = function (t) {\n if (!this.byStart[t] && !this.byEnd[t]) for (var e = this.lastSearchedChunk, i = t > e.end; e;) {\n if (e.contains(t)) return this._splitChunk(e, t);\n e = i ? this.byStart[e.end] : this.byEnd[e.start];\n }\n}, fe.prototype._splitChunk = function (t, e) {\n if (t.edited && t.content.length) {\n var i = ce(this.original)(e);\n throw new Error(\"Cannot split a chunk that has already been edited (\" + i.line + \":\" + i.column + ' – \"' + t.original + '\")');\n }\n\n var s = t.split(e);\n return this.byEnd[e] = t, this.byStart[e] = s, this.byEnd[s.end] = s, t === this.lastChunk && (this.lastChunk = s), this.lastSearchedChunk = t, !0;\n}, fe.prototype.toString = function () {\n for (var t = this.intro, e = this.firstChunk; e;) {\n t += e.toString(), e = e.next;\n }\n\n return t + this.outro;\n}, fe.prototype.isEmpty = function () {\n var t = this.firstChunk;\n\n do {\n if (t.intro.length && t.intro.trim() || t.content.length && t.content.trim() || t.outro.length && t.outro.trim()) return !1;\n } while (t = t.next);\n\n return !0;\n}, fe.prototype.length = function () {\n var t = this.firstChunk,\n e = 0;\n\n do {\n e += t.intro.length + t.content.length + t.outro.length;\n } while (t = t.next);\n\n return e;\n}, fe.prototype.trimLines = function () {\n return this.trim(\"[\\\\r\\\\n]\");\n}, fe.prototype.trim = function (t) {\n return this.trimStart(t).trimEnd(t);\n}, fe.prototype.trimEndAborted = function (t) {\n var e = new RegExp((t || \"\\\\s\") + \"+$\");\n if (this.outro = this.outro.replace(e, \"\"), this.outro.length) return !0;\n var i = this.lastChunk;\n\n do {\n var s = i.end,\n r = i.trimEnd(e);\n if (i.end !== s && (this.lastChunk === i && (this.lastChunk = i.next), this.byEnd[i.end] = i, this.byStart[i.next.start] = i.next, this.byEnd[i.next.end] = i.next), r) return !0;\n i = i.previous;\n } while (i);\n\n return !1;\n}, fe.prototype.trimEnd = function (t) {\n return this.trimEndAborted(t), this;\n}, fe.prototype.trimStartAborted = function (t) {\n var e = new RegExp(\"^\" + (t || \"\\\\s\") + \"+\");\n if (this.intro = this.intro.replace(e, \"\"), this.intro.length) return !0;\n var i = this.firstChunk;\n\n do {\n var s = i.end,\n r = i.trimStart(e);\n if (i.end !== s && (i === this.lastChunk && (this.lastChunk = i.next), this.byEnd[i.end] = i, this.byStart[i.next.start] = i.next, this.byEnd[i.next.end] = i.next), r) return !0;\n i = i.next;\n } while (i);\n\n return !1;\n}, fe.prototype.trimStart = function (t) {\n return this.trimStartAborted(t), this;\n};\n\nvar ge = function ge() {};\n\nfunction ye(t) {\n var e = [];\n return ve[t.type](e, t), e;\n}\n\nge.prototype.ancestor = function (t) {\n for (var e = this; t--;) {\n if (!(e = e.parent)) return null;\n }\n\n return e;\n}, ge.prototype.contains = function (t) {\n for (; t;) {\n if (t === this) return !0;\n t = t.parent;\n }\n\n return !1;\n}, ge.prototype.findLexicalBoundary = function () {\n return this.parent.findLexicalBoundary();\n}, ge.prototype.findNearest = function (t) {\n return \"string\" == typeof t && (t = new RegExp(\"^\" + t + \"$\")), t.test(this.type) ? this : this.parent.findNearest(t);\n}, ge.prototype.unparenthesizedParent = function () {\n for (var t = this.parent; t && \"ParenthesizedExpression\" === t.type;) {\n t = t.parent;\n }\n\n return t;\n}, ge.prototype.unparenthesize = function () {\n for (var t = this; \"ParenthesizedExpression\" === t.type;) {\n t = t.expression;\n }\n\n return t;\n}, ge.prototype.findScope = function (t) {\n return this.parent.findScope(t);\n}, ge.prototype.getIndentation = function () {\n return this.parent.getIndentation();\n}, ge.prototype.initialise = function (t) {\n for (var e = 0, i = this.keys; e < i.length; e += 1) {\n var s = this[i[e]];\n Array.isArray(s) ? s.forEach(function (e) {\n return e && e.initialise(t);\n }) : s && \"object\" == typeof s && s.initialise(t);\n }\n}, ge.prototype.toJSON = function () {\n return me(this);\n}, ge.prototype.toString = function () {\n return this.program.magicString.original.slice(this.start, this.end);\n}, ge.prototype.transpile = function (t, e) {\n for (var i = 0, s = this.keys; i < s.length; i += 1) {\n var r = this[s[i]];\n Array.isArray(r) ? r.forEach(function (i) {\n return i && i.transpile(t, e);\n }) : r && \"object\" == typeof r && r.transpile(t, e);\n }\n};\nvar ve = {\n Identifier: function Identifier(t, e) {\n t.push(e);\n },\n ObjectPattern: function ObjectPattern(t, e) {\n for (var i = 0, s = e.properties; i < s.length; i += 1) {\n var r = s[i];\n ve[r.type](t, r);\n }\n },\n Property: function Property(t, e) {\n ve[e.value.type](t, e.value);\n },\n ArrayPattern: function ArrayPattern(t, e) {\n for (var i = 0, s = e.elements; i < s.length; i += 1) {\n var r = s[i];\n r && ve[r.type](t, r);\n }\n },\n RestElement: function RestElement(t, e) {\n ve[e.argument.type](t, e.argument);\n },\n AssignmentPattern: function AssignmentPattern(t, e) {\n ve[e.left.type](t, e.left);\n }\n},\n xe = Object.create(null);\n\nfunction be(t) {\n this.parent = (t = t || {}).parent, this.isBlockScope = !!t.block, this.createDeclarationCallback = t.declare;\n\n for (var e = this; e.isBlockScope;) {\n e = e.parent;\n }\n\n this.functionScope = e, this.identifiers = [], this.declarations = Object.create(null), this.references = Object.create(null), this.blockScopedDeclarations = this.isBlockScope ? null : Object.create(null), this.aliases = Object.create(null);\n}\n\nfunction _e(t, e) {\n var i,\n s = t.split(\"\\n\"),\n r = s.length,\n n = 0;\n\n for (i = 0; i < r; i += 1) {\n var a = n + s[i].length + 1;\n if (a > e) return {\n line: i + 1,\n column: e - n,\n char: i\n };\n n = a;\n }\n\n throw new Error(\"Could not determine location of character\");\n}\n\nfunction Se(t, e) {\n for (var i = \"\"; e--;) {\n i += t;\n }\n\n return i;\n}\n\nfunction ke(t, e, i) {\n void 0 === i && (i = 1);\n var s = Math.max(e.line - 5, 0),\n r = e.line,\n n = String(r).length,\n a = t.split(\"\\n\").slice(s, r),\n o = a[a.length - 1].slice(0, e.column).replace(/\\t/g, \" \").length;\n return a.map(function (t, e) {\n return i = n, (r = String(e + s + 1)) + Se(\" \", i - r.length) + \" : \" + t.replace(/\\t/g, \" \");\n var i, r;\n }).join(\"\\n\") + \"\\n\" + Se(\" \", n + 3 + o) + Se(\"^\", i);\n}\n\n\"do if in for let new try var case else enum eval null this true void with await break catch class const false super throw while yield delete export import public return static switch typeof default extends finally package private continue debugger function arguments interface protected implements instanceof\".split(\" \").forEach(function (t) {\n return xe[t] = !0;\n}), be.prototype = {\n addDeclaration: function addDeclaration(t, e) {\n for (var i = 0, s = ye(t); i < s.length; i += 1) {\n var r = s[i],\n n = r.name,\n a = {\n name: n,\n node: r,\n kind: e,\n instances: []\n };\n this.declarations[n] = a, this.isBlockScope && (this.functionScope.blockScopedDeclarations[n] || (this.functionScope.blockScopedDeclarations[n] = []), this.functionScope.blockScopedDeclarations[n].push(a));\n }\n },\n addReference: function addReference(t) {\n this.consolidated ? this.consolidateReference(t) : this.identifiers.push(t);\n },\n consolidate: function consolidate() {\n for (var t = 0; t < this.identifiers.length; t += 1) {\n this.consolidateReference(this.identifiers[t]);\n }\n\n this.consolidated = !0;\n },\n consolidateReference: function consolidateReference(t) {\n var e = this.declarations[t.name];\n e ? e.instances.push(t) : (this.references[t.name] = !0, this.parent && this.parent.addReference(t));\n },\n contains: function contains(t) {\n return this.declarations[t] || !!this.parent && this.parent.contains(t);\n },\n createIdentifier: function createIdentifier(t) {\n \"number\" == typeof t && (t = t.toString());\n\n for (var e = t = t.replace(/\\s/g, \"\").replace(/\\[([^\\]]+)\\]/g, \"_$1\").replace(/[^a-zA-Z0-9_$]/g, \"_\").replace(/_{2,}/, \"_\"), i = 1; this.declarations[e] || this.references[e] || this.aliases[e] || e in xe;) {\n e = t + \"$\" + i++;\n }\n\n return this.aliases[e] = !0, e;\n },\n createDeclaration: function createDeclaration(t) {\n var e = this.createIdentifier(t);\n return this.createDeclarationCallback(e), e;\n },\n findDeclaration: function findDeclaration(t) {\n return this.declarations[t] || this.parent && this.parent.findDeclaration(t);\n },\n resolveName: function resolveName(t) {\n var e = this.findDeclaration(t);\n return e ? e.name : t;\n }\n};\n\nvar we = function (t) {\n function e(e, i) {\n if (t.call(this, e), this.name = \"CompileError\", i) {\n var s = i.program.magicString.original,\n r = _e(s, i.start);\n\n this.message = e + \" (\" + r.line + \":\" + r.column + \")\", this.stack = new t().stack.replace(new RegExp(\".+new \" + this.name + \".+\\\\n\", \"m\"), \"\"), this.loc = r, this.snippet = ke(s, r, i.end - i.start);\n }\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.toString = function () {\n return this.name + \": \" + this.message + \"\\n\" + this.snippet;\n }, e.missingTransform = function (t, i, s, r) {\n throw void 0 === r && (r = null), new e(\"Transforming \" + t + \" is not \" + (r ? \"fully supported\" : \"implemented\") + \". Use `transforms: { \" + i + \": false }` to skip transformation and disable this error\" + (r ? \", or `transforms: { \" + r + \": true }` if you know what you're doing\" : \"\") + \".\", s);\n }, e;\n}(Error);\n\nfunction Ee(t, e) {\n for (var i = 0; i < t.length; i += 1) {\n if (e(t[i], i)) return i;\n }\n\n return -1;\n}\n\nvar Ce = {\n Identifier: Ie,\n AssignmentPattern: function AssignmentPattern(t, e, i, s, r, n, a) {\n var o = \"Identifier\" === s.left.type,\n p = o ? s.left.name : r;\n n || a.push(function (e, i, r) {\n t.prependRight(s.left.end, i + \"if ( \" + p + \" === void 0 ) \" + p), t.move(s.left.end, s.right.end, e), t.appendLeft(s.right.end, r);\n }), o || Ae(t, e, i, s.left, r, n, a);\n },\n ArrayPattern: function ArrayPattern(t, e, i, s, r, n, a) {\n var o = s.start;\n s.elements.forEach(function (s, p) {\n s && (\"RestElement\" === s.type ? Ne(t, e, i, o, s.argument, r + \".slice(\" + p + \")\", n, a) : Ne(t, e, i, o, s, r + \"[\" + p + \"]\", n, a), o = s.end);\n }), t.remove(o, s.end);\n },\n ObjectPattern: Le\n};\n\nfunction Ae(t, e, i, s, r, n, a) {\n Ce[s.type](t, e, i, s, r, n, a);\n}\n\nfunction Ie(t, e, i, s, r, n, a) {\n a.push(function (e, a, o) {\n t.overwrite(s.start, s.end, (n ? a : a + \"var \") + i(s) + \" = \" + r + o), t.move(s.start, s.end, e);\n });\n}\n\nfunction Le(t, e, i, s, r, n, a) {\n var o = this,\n p = s.start,\n h = [];\n s.properties.forEach(function (s) {\n var c, l;\n if (\"Property\" === s.type) {\n if (l = s.value, s.computed || \"Identifier\" !== s.key.type) {\n if (s.computed || \"Literal\" !== s.key.type) {\n var u = t.slice(s.key.start, s.key.end);\n c = r + \"[\" + u + \"]\", h.push(\"String(\" + u + \")\");\n } else c = r + \"[\" + s.key.raw + \"]\", h.push(JSON.stringify(String(s.key.value)));\n } else c = r + \".\" + s.key.name, h.push('\"' + s.key.name + '\"');\n } else {\n if (\"RestElement\" !== s.type) throw new we(o, \"Unexpected node of type \" + s.type + \" in object pattern\");\n l = s.argument, c = e(\"rest\"), a.push(function (e, i, a) {\n var o = s.program.getObjectWithoutPropertiesHelper(t);\n t.overwrite(s.start, p = s.argument.start, (n ? i : i + \"var \") + c + \" = \" + o + \"( \" + r + \", [\" + h.join(\", \") + \"] )\" + a), t.move(s.start, p, e);\n });\n }\n Ne(t, e, i, p, l, c, n, a), p = s.end;\n }), t.remove(p, s.end);\n}\n\nfunction Ne(t, e, i, s, r, n, a, o) {\n switch (r.type) {\n case \"Identifier\":\n t.remove(s, r.start), Ie(t, 0, i, r, n, a, o);\n break;\n\n case \"MemberExpression\":\n t.remove(s, r.start), function (t, e, i, s, r, n, a) {\n a.push(function (e, i, n) {\n t.prependRight(s.start, i), t.appendLeft(s.end, \" = \" + r + n), t.move(s.start, s.end, e);\n });\n }(t, 0, 0, r, n, 0, o);\n break;\n\n case \"AssignmentPattern\":\n var p,\n h = \"Identifier\" === r.left.type;\n p = h ? i(r.left) : e(n), o.push(function (e, i, s) {\n a ? (t.prependRight(r.right.start, p + \" = \" + n + \", \" + p + \" = \" + p + \" === void 0 ? \"), t.appendLeft(r.right.end, \" : \" + p + s)) : (t.prependRight(r.right.start, i + \"var \" + p + \" = \" + n + \"; if ( \" + p + \" === void 0 ) \" + p + \" = \"), t.appendLeft(r.right.end, s)), t.move(r.right.start, r.right.end, e);\n }), h ? t.remove(s, r.right.start) : (t.remove(s, r.left.start), t.remove(r.left.end, r.right.start), Ne(t, e, i, s, r.left, p, a, o));\n break;\n\n case \"ObjectPattern\":\n t.remove(s, s = r.start);\n var c = n;\n r.properties.length > 1 && (c = e(n), o.push(function (e, i, o) {\n t.prependRight(r.start, (a ? \"\" : i + \"var \") + c + \" = \"), t.overwrite(r.start, s = r.start + 1, n), t.appendLeft(s, o), t.overwrite(r.start, s = r.start + 1, (a ? \"\" : i + \"var \") + c + \" = \" + n + o), t.move(r.start, s, e);\n })), Le(t, e, i, r, c, a, o);\n break;\n\n case \"ArrayPattern\":\n if (t.remove(s, s = r.start), r.elements.filter(Boolean).length > 1) {\n var l = e(n);\n o.push(function (e, i, o) {\n t.prependRight(r.start, (a ? \"\" : i + \"var \") + l + \" = \"), t.overwrite(r.start, s = r.start + 1, n, {\n contentOnly: !0\n }), t.appendLeft(s, o), t.move(r.start, s, e);\n }), r.elements.forEach(function (r, n) {\n r && (\"RestElement\" === r.type ? Ne(t, e, i, s, r.argument, l + \".slice(\" + n + \")\", a, o) : Ne(t, e, i, s, r, l + \"[\" + n + \"]\", a, o), s = r.end);\n });\n } else {\n var u = Ee(r.elements, Boolean),\n d = r.elements[u];\n \"RestElement\" === d.type ? Ne(t, e, i, s, d.argument, n + \".slice(\" + u + \")\", a, o) : Ne(t, e, i, s, d, n + \"[\" + u + \"]\", a, o), s = d.end;\n }\n\n t.remove(s, r.end);\n break;\n\n default:\n throw new Error(\"Unexpected node type in destructuring (\" + r.type + \")\");\n }\n}\n\nvar Pe = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.createScope = function () {\n var t = this;\n this.parentIsFunction = /Function/.test(this.parent.type), this.isFunctionBlock = this.parentIsFunction || \"Root\" === this.parent.type, this.scope = new be({\n block: !this.isFunctionBlock,\n parent: this.parent.findScope(!1),\n declare: function declare(e) {\n return t.createdDeclarations.push(e);\n }\n }), this.parentIsFunction && this.parent.params.forEach(function (e) {\n t.scope.addDeclaration(e, \"param\");\n });\n }, e.prototype.initialise = function (t) {\n this.thisAlias = null, this.argumentsAlias = null, this.defaultParameters = [], this.createdDeclarations = [], this.scope || this.createScope(), this.body.forEach(function (e) {\n return e.initialise(t);\n }), this.scope.consolidate();\n }, e.prototype.findLexicalBoundary = function () {\n return \"Program\" === this.type ? this : /^Function/.test(this.parent.type) ? this : this.parent.findLexicalBoundary();\n }, e.prototype.findScope = function (t) {\n return t && !this.isFunctionBlock ? this.parent.findScope(t) : this.scope;\n }, e.prototype.getArgumentsAlias = function () {\n return this.argumentsAlias || (this.argumentsAlias = this.scope.createIdentifier(\"arguments\")), this.argumentsAlias;\n }, e.prototype.getArgumentsArrayAlias = function () {\n return this.argumentsArrayAlias || (this.argumentsArrayAlias = this.scope.createIdentifier(\"argsArray\")), this.argumentsArrayAlias;\n }, e.prototype.getThisAlias = function () {\n return this.thisAlias || (this.thisAlias = this.scope.createIdentifier(\"this\")), this.thisAlias;\n }, e.prototype.getIndentation = function () {\n if (void 0 === this.indentation) {\n for (var t = this.program.magicString.original, e = this.synthetic || !this.body.length, i = e ? this.start : this.body[0].start; i && \"\\n\" !== t[i];) {\n i -= 1;\n }\n\n for (this.indentation = \"\";;) {\n var s = t[i += 1];\n if (\" \" !== s && \"\\t\" !== s) break;\n this.indentation += s;\n }\n\n for (var r = this.program.magicString.getIndentString(), n = this.parent; n;) {\n \"constructor\" !== n.kind || n.parent.parent.superClass || (this.indentation = this.indentation.replace(r, \"\")), n = n.parent;\n }\n\n e && (this.indentation += r);\n }\n\n return this.indentation;\n }, e.prototype.transpile = function (e, i) {\n var s,\n r,\n n = this,\n a = this.getIndentation(),\n o = [];\n if (this.argumentsAlias && o.push(function (t, i, s) {\n e.appendLeft(t, i + \"var \" + n.argumentsAlias + \" = arguments\" + s);\n }), this.thisAlias && o.push(function (t, i, s) {\n e.appendLeft(t, i + \"var \" + n.thisAlias + \" = this\" + s);\n }), this.argumentsArrayAlias && o.push(function (t, i, s) {\n var r = n.scope.createIdentifier(\"i\");\n e.appendLeft(t, i + \"var \" + r + \" = arguments.length, \" + n.argumentsArrayAlias + \" = Array(\" + r + \");\\n\" + a + \"while ( \" + r + \"-- ) \" + n.argumentsArrayAlias + \"[\" + r + \"] = arguments[\" + r + \"]\" + s);\n }), /Function/.test(this.parent.type) ? this.transpileParameters(this.parent.params, e, i, a, o) : \"CatchClause\" === this.parent.type && this.transpileParameters([this.parent.param], e, i, a, o), i.letConst && this.isFunctionBlock && this.transpileBlockScopedIdentifiers(e), t.prototype.transpile.call(this, e, i), this.createdDeclarations.length && o.push(function (t, i, s) {\n var r = i + \"var \" + n.createdDeclarations.join(\", \") + s;\n e.appendLeft(t, r);\n }), this.synthetic) if (\"ArrowFunctionExpression\" === this.parent.type) {\n var p = this.body[0];\n o.length ? (e.appendLeft(this.start, \"{\").prependRight(this.end, this.parent.getIndentation() + \"}\"), e.prependRight(p.start, \"\\n\" + a + \"return \"), e.appendLeft(p.end, \";\\n\")) : i.arrow && (e.prependRight(p.start, \"{ return \"), e.appendLeft(p.end, \"; }\"));\n } else o.length && e.prependRight(this.start, \"{\").appendLeft(this.end, \"}\");\n s = (r = this.body[0]) && \"ExpressionStatement\" === r.type && \"Literal\" === r.expression.type && \"use strict\" === r.expression.value ? this.body[0].end : this.synthetic || \"Root\" === this.parent.type ? this.start : this.start + 1;\n var h = \"\\n\" + a,\n c = \";\";\n o.forEach(function (t, e) {\n e === o.length - 1 && (c = \";\\n\"), t(s, h, c);\n });\n }, e.prototype.transpileParameters = function (t, e, i, s, r) {\n var n = this;\n t.forEach(function (a) {\n if (\"AssignmentPattern\" === a.type && \"Identifier\" === a.left.type) i.defaultParameter && r.push(function (t, i, s) {\n e.prependRight(a.left.end, i + \"if ( \" + a.left.name + \" === void 0 ) \" + a.left.name).move(a.left.end, a.right.end, t).appendLeft(a.right.end, s);\n });else if (\"RestElement\" === a.type) i.spreadRest && r.push(function (i, r, o) {\n var p = t[t.length - 2];\n if (p) e.remove(p ? p.end : a.start, a.end);else {\n for (var h = a.start, c = a.end; /\\s/.test(e.original[h - 1]);) {\n h -= 1;\n }\n\n for (; /\\s/.test(e.original[c]);) {\n c += 1;\n }\n\n e.remove(h, c);\n }\n var l = a.argument.name,\n u = n.scope.createIdentifier(\"len\"),\n d = t.length - 1;\n e.prependRight(i, d ? r + \"var \" + l + \" = [], \" + u + \" = arguments.length - \" + d + \";\\n\" + s + \"while ( \" + u + \"-- > 0 ) \" + l + \"[ \" + u + \" ] = arguments[ \" + u + \" + \" + d + \" ]\" + o : r + \"var \" + l + \" = [], \" + u + \" = arguments.length;\\n\" + s + \"while ( \" + u + \"-- ) \" + l + \"[ \" + u + \" ] = arguments[ \" + u + \" ]\" + o);\n });else if (\"Identifier\" !== a.type && i.parameterDestructuring) {\n var o = n.scope.createIdentifier(\"ref\");\n Ae(e, function (t) {\n return n.scope.createIdentifier(t);\n }, function (t) {\n return n.scope.resolveName(t.name);\n }, a, o, !1, r), e.prependRight(a.start, o);\n }\n });\n }, e.prototype.transpileBlockScopedIdentifiers = function (t) {\n var e = this;\n Object.keys(this.scope.blockScopedDeclarations).forEach(function (i) {\n for (var s = 0, r = e.scope.blockScopedDeclarations[i]; s < r.length; s += 1) {\n var n = r[s],\n a = !1;\n\n if (\"for.let\" === n.kind) {\n var o = n.node.findNearest(\"ForStatement\");\n\n if (o.shouldRewriteAsFunction) {\n var p = e.scope.createIdentifier(i),\n h = o.reassigned[i] ? e.scope.createIdentifier(i) : i;\n n.name = p, t.overwrite(n.node.start, n.node.end, p, {\n storeName: !0\n }), o.aliases[i] = {\n outer: p,\n inner: h\n };\n\n for (var c = 0, l = n.instances; c < l.length; c += 1) {\n var u = l[c],\n d = o.body.contains(u) ? h : p;\n i !== d && t.overwrite(u.start, u.end, d, {\n storeName: !0\n });\n }\n\n a = !0;\n }\n }\n\n if (!a) {\n var f = e.scope.createIdentifier(i);\n\n if (i !== f) {\n n.name = f, t.overwrite(n.node.start, n.node.end, f, {\n storeName: !0\n });\n\n for (var m = 0, g = n.instances; m < g.length; m += 1) {\n var y = g[m];\n y.rewritten = !0, t.overwrite(y.start, y.end, f, {\n storeName: !0\n });\n }\n }\n }\n }\n });\n }, e;\n}(ge);\n\nfunction Te(t) {\n return \"Identifier\" === t.type && \"arguments\" === t.name;\n}\n\nfunction Re(t, e, i) {\n for (var s = i.length; s--;) {\n var r = i[s];\n\n if (r && \"SpreadElement\" === r.type) {\n var n = r.argument;\n\n if (\"ArrayExpression\" === n.type) {\n var a = n.elements;\n\n if (!a.some(function (t) {\n return null === t;\n })) {\n var o = s === i.length - 1;\n 0 === a.length ? t.remove(o && 0 !== s ? i[s - 1].end : r.start, o ? e.end - 1 : i[s + 1].start) : (t.remove(r.start, a[0].start), t.remove(a[a.length - 1].end, o ? e.end - 1 : r.end)), i.splice.apply(i, [s, 1].concat(a)), s += a.length;\n }\n }\n }\n }\n}\n\nfunction Oe(t) {\n switch (t.type) {\n case \"ArrayExpression\":\n case \"CallExpression\":\n case \"Identifier\":\n case \"ParenthesizedExpression\":\n case \"ThisExpression\":\n return !1;\n\n default:\n return !0;\n }\n}\n\nfunction je(t, e, i, s, r) {\n for (var n = e.length, a = -1; n--;) {\n var o = e[n];\n o && \"SpreadElement\" === o.type && (Te(o.argument) && t.overwrite(o.argument.start, o.argument.end, s), a = n);\n }\n\n if (-1 === a) return !1;\n\n if (r) {\n for (n = 0; n < e.length; n += 1) {\n var p = e[n];\n \"SpreadElement\" === p.type ? t.remove(p.start, p.argument.start) : (t.prependRight(p.start, \"[\"), t.prependRight(p.end, \"]\"));\n }\n\n return !0;\n }\n\n var h = e[a],\n c = e[a - 1];\n if (c) t.overwrite(c.end, h.start, \" ].concat( \");else {\n var l;\n if (i !== h.start) (l = Oe(h.argument)) ? t.overwrite(i, h.start, \"( \") : t.remove(i, h.start);else {\n if (\"CallExpression\" !== h.parent.type) throw new we(\"Unsupported spread construct, please raise an issue at https://github.com/bublejs/buble/issues\", h);\n l = Oe(h.argument);\n }\n t.overwrite(h.end, e[1].start, l ? \" ).concat( \" : \".concat( \");\n }\n\n for (n = a; n < e.length; n += 1) {\n (h = e[n]) && (\"SpreadElement\" === h.type ? t.remove(h.start, h.argument.start) : (t.appendLeft(h.start, \"[\"), t.appendLeft(h.end, \"]\")));\n }\n\n return !0;\n}\n\nvar Ve = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (e.spreadRest && this.elements.length) for (var i = this.findLexicalBoundary(), s = this.elements.length; s--;) {\n var r = this.elements[s];\n r && \"SpreadElement\" === r.type && Te(r.argument) && (this.argumentsArrayAlias = i.getArgumentsArrayAlias());\n }\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.spreadRest) {\n if (Re(e, this, this.elements), this.elements.length) {\n var s = this.elements[this.elements.length - 1];\n s && /\\s*,/.test(e.original.slice(s.end, this.end)) && e.overwrite(s.end, this.end - 1, \" \");\n }\n\n if (1 === this.elements.length) {\n var r = this.elements[0];\n r && \"SpreadElement\" === r.type && (Te(r.argument) ? e.overwrite(this.start, this.end, \"[].concat( \" + this.argumentsArrayAlias + \" )\") : (e.overwrite(this.start, r.argument.start, \"[].concat( \"), e.overwrite(r.end, this.end, \" )\")));\n } else je(e, this.elements, this.start, this.argumentsArrayAlias) && e.overwrite(this.end - 1, this.end, \")\");\n }\n }, e;\n}(ge);\n\nfunction De(t, e) {\n for (; \")\" !== t.original[e];) {\n if (\",\" === t.original[e]) return void t.remove(e, e + 1);\n \"/\" === t.original[e] && (e = \"/\" === t.original[e + 1] ? t.original.indexOf(\"\\n\", e) : t.original.indexOf(\"*/\", e) + 1), e += 1;\n }\n}\n\nvar Be = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.async && e.asyncAwait && we.missingTransform(\"async arrow functions\", \"asyncAwait\", this), this.body.createScope(), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n for (var s = this.start, r = (this.body || this.params[0]).start - 1; \"(\" !== e.original[s] && s < r;) {\n ++s;\n }\n\n \"(\" !== e.original[s] && (s = -1);\n var n = -1 === s;\n\n if (i.arrow || this.needsArguments(i)) {\n for (var a = this.body.start; \"=\" !== e.original[a];) {\n a -= 1;\n }\n\n e.remove(a, this.body.start), t.prototype.transpile.call(this, e, i), n && (e.prependRight(this.params[0].start, \"(\"), e.appendLeft(this.params[0].end, \")\"));\n var o,\n p = this.parent && \"ExpressionStatement\" === this.parent.type,\n h = p ? \"!\" : \"\";\n this.async && (h += \"async \"), h += \"function\", p || (h += \" \"), (o = n ? this.params[0].start : s) > this.start ? e.overwrite(this.start, o, h) : e.prependRight(this.start, h);\n } else t.prototype.transpile.call(this, e, i);\n\n i.trailingFunctionCommas && this.params.length && !n && De(e, this.params[this.params.length - 1].end);\n }, e.prototype.needsArguments = function (t) {\n return t.spreadRest && this.params.filter(function (t) {\n return \"RestElement\" === t.type;\n }).length > 0;\n }, e;\n}(ge);\n\nfunction Fe(t, e) {\n var i = e.findDeclaration(t.name);\n if (i && \"const\" === i.kind) throw new we(t.name + \" is read-only\", t);\n}\n\nvar Me = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (\"Identifier\" === this.left.type) {\n var i = this.findScope(!1).findDeclaration(this.left.name),\n s = i && i.node.ancestor(3);\n s && \"ForStatement\" === s.type && s.body.contains(this) && (s.reassigned[this.left.name] = !0);\n }\n\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n \"Identifier\" === this.left.type && Fe(this.left, this.findScope(!1)), \"**=\" === this.operator && i.exponentiation ? this.transpileExponentiation(e, i) : /Pattern/.test(this.left.type) && i.destructuring && this.transpileDestructuring(e), t.prototype.transpile.call(this, e, i);\n }, e.prototype.transpileDestructuring = function (t) {\n var e = this,\n i = this.findScope(!0),\n s = this.findScope(!1),\n r = i.createDeclaration(\"assign\");\n t.appendRight(this.left.end, \"(\" + r), t.appendLeft(this.right.end, \", \");\n var n = [];\n Ae(t, function (t) {\n return i.createDeclaration(t);\n }, function (t) {\n var e = s.resolveName(t.name);\n return Fe(t, s), e;\n }, this.left, r, !0, n);\n var a = \", \";\n n.forEach(function (t, i) {\n i === n.length - 1 && (a = \"\"), t(e.end, \"\", a);\n }), \"ExpressionStatement\" === this.unparenthesizedParent().type ? t.prependRight(this.end, \")\") : t.appendRight(this.end, \", \" + r + \")\");\n }, e.prototype.transpileExponentiation = function (t) {\n for (var e, i = this.findScope(!1), s = this.left.end; \"*\" !== t.original[s];) {\n s += 1;\n }\n\n t.remove(s, s + 2);\n var r = this.left.unparenthesize();\n if (\"Identifier\" === r.type) e = i.resolveName(r.name);else if (\"MemberExpression\" === r.type) {\n var n,\n a,\n o = !1,\n p = !1,\n h = this.findNearest(/(?:Statement|Declaration)$/),\n c = h.getIndentation();\n \"Identifier\" === r.property.type ? a = r.computed ? i.resolveName(r.property.name) : r.property.name : (a = i.createDeclaration(\"property\"), p = !0), \"Identifier\" === r.object.type ? n = i.resolveName(r.object.name) : (n = i.createDeclaration(\"object\"), o = !0), r.start === h.start ? o && p ? (t.prependRight(h.start, n + \" = \"), t.overwrite(r.object.end, r.property.start, \";\\n\" + c + a + \" = \"), t.overwrite(r.property.end, r.end, \";\\n\" + c + n + \"[\" + a + \"]\")) : o ? (t.prependRight(h.start, n + \" = \"), t.appendLeft(r.object.end, \";\\n\" + c), t.appendLeft(r.object.end, n)) : p && (t.prependRight(r.property.start, a + \" = \"), t.appendLeft(r.property.end, \";\\n\" + c), t.move(r.property.start, r.property.end, this.start), t.appendLeft(r.object.end, \"[\" + a + \"]\"), t.remove(r.object.end, r.property.start), t.remove(r.property.end, r.end)) : (o && p ? (t.prependRight(r.start, \"( \" + n + \" = \"), t.overwrite(r.object.end, r.property.start, \", \" + a + \" = \"), t.overwrite(r.property.end, r.end, \", \" + n + \"[\" + a + \"]\")) : o ? (t.prependRight(r.start, \"( \" + n + \" = \"), t.appendLeft(r.object.end, \", \" + n)) : p && (t.prependRight(r.property.start, \"( \" + a + \" = \"), t.appendLeft(r.property.end, \", \"), t.move(r.property.start, r.property.end, r.start), t.overwrite(r.object.end, r.property.start, \"[\" + a + \"]\"), t.remove(r.property.end, r.end)), p && t.appendLeft(this.end, \" )\")), e = n + (r.computed || p ? \"[\" + a + \"]\" : \".\" + a);\n }\n t.prependRight(this.right.start, \"Math.pow( \" + e + \", \"), t.appendLeft(this.right.end, \" )\");\n }, e;\n}(ge),\n Ue = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.asyncAwait && we.missingTransform(\"await\", \"asyncAwait\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n qe = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n \"**\" === this.operator && i.exponentiation && (e.prependRight(this.start, \"Math.pow( \"), e.overwrite(this.left.end, this.right.start, \", \"), e.appendLeft(this.end, \" )\")), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n Xe = /(?:For(?:In|Of)?|While)Statement/,\n Je = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function () {\n var t = this.findNearest(Xe),\n e = this.findNearest(\"SwitchCase\");\n t && (!e || t.depth > e.depth) && (t.canBreak = !0, this.loop = t);\n }, e.prototype.transpile = function (t) {\n if (this.loop && this.loop.shouldRewriteAsFunction) {\n if (this.label) throw new we(\"Labels are not currently supported in a loop with locally-scoped variables\", this);\n t.overwrite(this.start, this.start + 5, \"return 'break'\");\n }\n }, e;\n}(ge),\n We = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (e.spreadRest && this.arguments.length > 1) for (var i = this.findLexicalBoundary(), s = this.arguments.length; s--;) {\n var r = this.arguments[s];\n \"SpreadElement\" === r.type && Te(r.argument) && (this.argumentsArrayAlias = i.getArgumentsArrayAlias());\n }\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (i.spreadRest && this.arguments.length && Re(e, this, this.arguments), i.spreadRest && this.arguments.length) {\n var s,\n r = !1,\n n = this.arguments[0];\n\n if (1 === this.arguments.length ? \"SpreadElement\" === n.type && (e.remove(n.start, n.argument.start), r = !0) : r = je(e, this.arguments, n.start, this.argumentsArrayAlias), r) {\n var a = null;\n if (\"Super\" === this.callee.type ? a = this.callee : \"MemberExpression\" === this.callee.type && \"Super\" === this.callee.object.type && (a = this.callee.object), a || \"MemberExpression\" !== this.callee.type) s = \"void 0\";else if (\"Identifier\" === this.callee.object.type) s = this.callee.object.name;else {\n s = this.findScope(!0).createDeclaration(\"ref\");\n var o = this.callee.object;\n e.prependRight(o.start, \"(\" + s + \" = \"), e.appendLeft(o.end, \")\");\n }\n e.appendLeft(this.callee.end, \".apply\"), a ? (a.noCall = !0, this.arguments.length > 1 && (\"SpreadElement\" === n.type ? Oe(n.argument) && e.prependRight(n.start, \"( \") : e.prependRight(n.start, \"[ \"), e.appendLeft(this.arguments[this.arguments.length - 1].end, \" )\"))) : 1 === this.arguments.length ? e.prependRight(n.start, s + \", \") : (\"SpreadElement\" === n.type ? Oe(n.argument) ? e.appendLeft(n.start, s + \", ( \") : e.appendLeft(n.start, s + \", \") : e.appendLeft(n.start, s + \", [ \"), e.appendLeft(this.arguments[this.arguments.length - 1].end, \" )\"));\n }\n }\n\n i.trailingFunctionCommas && this.arguments.length && De(e, this.arguments[this.arguments.length - 1].end), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n ze = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i, s, r) {\n var n = this;\n\n if (i.classes) {\n var a = this.parent.name,\n o = e.getIndentString(),\n p = this.getIndentation() + (s ? o : \"\"),\n h = p + o,\n c = Ee(this.body, function (t) {\n return \"constructor\" === t.kind;\n }),\n l = this.body[c],\n u = \"\",\n d = \"\";\n\n if (this.body.length ? (e.remove(this.start, this.body[0].start), e.remove(this.body[this.body.length - 1].end, this.end)) : e.remove(this.start, this.end), l) {\n l.value.body.isConstructorBody = !0;\n var f = this.body[c + 1];\n c > 0 && (e.remove(this.body[c - 1].end, l.start), e.move(l.start, f ? f.start : this.end - 1, this.body[0].start)), s || e.appendLeft(l.end, \";\");\n }\n\n var m = [];\n this.body.forEach(function (t) {\n if (\"FieldDefinition\" === t.type && (m.push(t.computed ? \"this\" + e.slice(t.start, t.end) + \";\" : \"this.\" + e.slice(t.start, t.end) + \";\"), e.remove(t.start, t.end), \"\" !== e.byStart[t.end].content)) {\n for (var i = 0; i < e.byStart[t.end].content.length && -1 === e.byStart[t.end].content.slice(0, i).indexOf(\";\"); i++) {\n ;\n }\n\n i > 0 && e.remove(t.end, t.end + i);\n }\n });\n var g = !1 !== this.program.options.namedFunctionExpressions,\n y = g || this.parent.superClass || \"ClassDeclaration\" !== this.parent.type;\n\n if (this.parent.superClass) {\n var v = \"if ( \" + r + \" ) \" + a + \".__proto__ = \" + r + \";\\n\" + p + a + \".prototype = Object.create( \" + r + \" && \" + r + \".prototype );\\n\" + p + a + \".prototype.constructor = \" + a + \";\";\n u += l ? \"\\n\\n\" + p + v : (v = \"function \" + a + \" () {\" + (m.length ? \"\\n\" + h + m.join(\"\\n\" + h) + \"\\n\" + h : \"\") + (r ? \"\\n\" + h + r + \".apply(this, arguments);\\n\" + p + \"}\" : \"}\") + (s ? \"\" : \";\") + (this.body.length ? \"\\n\\n\" + p : \"\") + v) + \"\\n\\n\" + p;\n } else if (!l) {\n var x = \"function \" + (y ? a + \" \" : \"\") + \"() {\" + (m.length ? \"\\n\" + h + m.join(\"\\n\" + h) + \"\\n\" + p : \"\") + \"}\";\n \"ClassDeclaration\" === this.parent.type && (x += \";\"), this.body.length && (x += \"\\n\\n\" + p), u += x;\n }\n\n l && m.length && e.appendLeft(l.value.body.start + 1, \"\\n\" + h + m.join(\"\\n\" + h));\n\n var b,\n _,\n S = this.findScope(!1),\n k = [],\n w = [];\n\n if (this.body.forEach(function (t, s) {\n if (\"get\" !== t.kind && \"set\" !== t.kind || !i.getterSetter || we.missingTransform(\"getters and setters\", \"getterSetter\", t), \"FieldDefinition\" !== t.type) if (\"constructor\" !== t.kind) {\n t.static && e.remove(t.start, t.start + (\" \" == e.original[t.start + 6] ? 7 : 6));\n var r,\n o = \"method\" !== t.kind,\n h = t.key.name;\n (xe[h] || t.value.body.scope.references[h]) && (h = S.createIdentifier(h));\n var l = !1;\n\n if (t.computed || \"Literal\" !== t.key.type || (l = !0, t.computed = !0), o) {\n if (t.computed) throw new Error(\"Computed accessor properties are not currently supported\");\n e.remove(t.start, t.key.start), t.static ? (~w.indexOf(t.key.name) || w.push(t.key.name), _ || (_ = S.createIdentifier(\"staticAccessors\")), r = \"\" + _) : (~k.indexOf(t.key.name) || k.push(t.key.name), b || (b = S.createIdentifier(\"prototypeAccessors\")), r = \"\" + b);\n } else r = t.static ? \"\" + a : a + \".prototype\";\n\n t.computed || (r += \".\"), (c > 0 && s === c + 1 || 0 === s && c === n.body.length - 1) && (r = \"\\n\\n\" + p + r);\n var u = t.key.end;\n if (t.computed) if (l) e.prependRight(t.key.start, \"[\"), e.appendLeft(t.key.end, \"]\");else {\n for (; \"]\" !== e.original[u];) {\n u += 1;\n }\n\n u += 1;\n }\n var d = (o ? \".\" + t.kind : \"\") + \" = \" + (t.value.async ? \"async \" : \"\") + \"function\" + (t.value.generator ? \"* \" : \" \") + (t.computed || o || !g ? \"\" : h + \" \");\n e.remove(u, t.value.start), e.prependRight(t.value.start, d), e.appendLeft(t.end, \";\"), t.value.generator && e.remove(t.start, t.key.start);\n var f = t.key.start;\n if (t.computed && !l) for (; \"[\" != e.original[f];) {\n --f;\n }\n t.start < f ? e.overwrite(t.start, f, r) : e.prependRight(t.start, r);\n } else e.overwrite(t.key.start, t.key.end, \"function\" + (y ? \" \" + a : \"\"));\n }), k.length || w.length) {\n var E = [],\n C = [];\n k.length && (E.push(\"var \" + b + \" = { \" + k.map(function (t) {\n return t + \": { configurable: true }\";\n }).join(\",\") + \" };\"), C.push(\"Object.defineProperties( \" + a + \".prototype, \" + b + \" );\")), w.length && (E.push(\"var \" + _ + \" = { \" + w.map(function (t) {\n return t + \": { configurable: true }\";\n }).join(\",\") + \" };\"), C.push(\"Object.defineProperties( \" + a + \", \" + _ + \" );\")), l && (u += \"\\n\\n\" + p), u += E.join(\"\\n\" + p), l || (u += \"\\n\\n\" + p), d += \"\\n\\n\" + p + C.join(\"\\n\" + p);\n }\n\n l ? e.appendLeft(l.end, u) : e.prependRight(this.start, u), e.appendLeft(this.end, d);\n }\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n He = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.id ? (this.name = this.id.name, this.findScope(!0).addDeclaration(this.id, \"class\")) : this.name = this.findScope(!0).createIdentifier(\"defaultExport\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (t, e) {\n if (e.classes) {\n this.superClass || function (t, e) {\n var i = t.start,\n s = t.end,\n r = e.getIndentString(),\n n = r.length,\n a = i - n;\n t.program.indentExclusions[a] || e.original.slice(a, i) !== r || e.remove(a, i);\n\n for (var o, p = new RegExp(r + \"\\\\S\", \"g\"), h = e.original.slice(i, s); o = p.exec(h);) {\n var c = i + o.index;\n t.program.indentExclusions[c] || e.remove(c, c + n);\n }\n }(this.body, t);\n var i = this.superClass && (this.superClass.name || \"superclass\"),\n s = this.getIndentation(),\n r = s + t.getIndentString(),\n n = \"ExportDefaultDeclaration\" === this.parent.type;\n n && t.remove(this.parent.start, this.start);\n var a = this.start;\n this.id ? (t.overwrite(a, this.id.start, \"var \"), a = this.id.end) : t.prependLeft(a, \"var \" + this.name), this.superClass ? this.superClass.end === this.body.start ? (t.remove(a, this.superClass.start), t.appendLeft(a, \" = /*@__PURE__*/(function (\" + i + \") {\\n\" + r)) : (t.overwrite(a, this.superClass.start, \" = \"), t.overwrite(this.superClass.end, this.body.start, \"/*@__PURE__*/(function (\" + i + \") {\\n\" + r)) : a === this.body.start ? t.appendLeft(a, \" = \") : t.overwrite(a, this.body.start, \" = \"), this.body.transpile(t, e, !!this.superClass, i);\n var o = n ? \"\\n\\n\" + s + \"export default \" + this.name + \";\" : \"\";\n this.superClass ? (t.appendLeft(this.end, \"\\n\\n\" + r + \"return \" + this.name + \";\\n\" + s + \"}(\"), t.move(this.superClass.start, this.superClass.end, this.end), t.prependRight(this.end, \"));\" + o)) : o && t.prependRight(this.end, o);\n } else this.body.transpile(t, e, !1, null);\n }, e;\n}(ge),\n Ge = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.name = (this.id ? this.id.name : \"VariableDeclarator\" === this.parent.type ? this.parent.id.name : \"AssignmentExpression\" !== this.parent.type ? null : \"Identifier\" === this.parent.left.type ? this.parent.left.name : \"MemberExpression\" === this.parent.left.type ? this.parent.left.property.name : null) || this.findScope(!0).createIdentifier(\"anonymous\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (t, e) {\n if (e.classes) {\n var i = this.superClass && (this.superClass.name || \"superclass\"),\n s = this.getIndentation(),\n r = s + t.getIndentString();\n this.superClass ? (t.remove(this.start, this.superClass.start), t.remove(this.superClass.end, this.body.start), t.appendRight(this.start, \"/*@__PURE__*/(function (\" + i + \") {\\n\" + r)) : t.overwrite(this.start, this.body.start, \"/*@__PURE__*/(function () {\\n\" + r), this.body.transpile(t, e, !0, i);\n var n = \"\";\n this.superClass && (n = t.slice(this.superClass.start, this.superClass.end), t.remove(this.superClass.start, this.superClass.end)), t.appendLeft(this.end, \"\\n\\n\" + r + \"return \" + this.name + \";\\n\" + s + \"}(\" + n + \"))\");\n } else this.body.transpile(t, e, !1);\n }, e;\n}(ge),\n Qe = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n if (this.findNearest(Xe).shouldRewriteAsFunction) {\n if (this.label) throw new we(\"Labels are not currently supported in a loop with locally-scoped variables\", this);\n t.overwrite(this.start, this.start + 8, \"return\");\n }\n }, e;\n}(ge),\n Ke = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleExport && we.missingTransform(\"export\", \"moduleExport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n $e = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleExport && we.missingTransform(\"export\", \"moduleExport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n Ye = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return t || !this.createdScope ? this.parent.findScope(t) : this.body.scope;\n }, e.prototype.initialise = function (e) {\n if (this.body.createScope(), this.createdScope = !0, this.reassigned = Object.create(null), this.aliases = Object.create(null), this.thisRefs = [], t.prototype.initialise.call(this, e), e.letConst) for (var i = Object.keys(this.body.scope.declarations), s = i.length; s--;) {\n for (var r = this.body.scope.declarations[i[s]], n = r.instances.length; n--;) {\n var a = r.instances[n].findNearest(/Function/);\n\n if (a && a.depth > this.depth) {\n this.shouldRewriteAsFunction = !0;\n\n for (var o = 0, p = this.thisRefs; o < p.length; o += 1) {\n var h = p[o];\n h.alias = h.alias || h.findLexicalBoundary().getThisAlias();\n }\n\n break;\n }\n }\n\n if (this.shouldRewriteAsFunction) break;\n }\n }, e.prototype.transpile = function (e, i) {\n var s = \"ForOfStatement\" != this.type && (\"BlockStatement\" !== this.body.type || \"BlockStatement\" === this.body.type && this.body.synthetic);\n\n if (this.shouldRewriteAsFunction) {\n var r = this.getIndentation(),\n n = r + e.getIndentString(),\n a = this.args ? \" \" + this.args.join(\", \") + \" \" : \"\",\n o = this.params ? \" \" + this.params.join(\", \") + \" \" : \"\",\n p = this.findScope(!0),\n h = p.createIdentifier(\"loop\"),\n c = \"var \" + h + \" = function (\" + o + \") \" + (this.body.synthetic ? \"{\\n\" + r + e.getIndentString() : \"\"),\n l = (this.body.synthetic ? \"\\n\" + r + \"}\" : \"\") + \";\\n\\n\" + r;\n\n if (e.prependRight(this.body.start, c), e.appendLeft(this.body.end, l), e.move(this.start, this.body.start, this.body.end), this.canBreak || this.canReturn) {\n var u = p.createIdentifier(\"returned\"),\n d = \"{\\n\" + n + \"var \" + u + \" = \" + h + \"(\" + a + \");\\n\";\n this.canBreak && (d += \"\\n\" + n + \"if ( \" + u + \" === 'break' ) break;\"), this.canReturn && (d += \"\\n\" + n + \"if ( \" + u + \" ) return \" + u + \".v;\"), e.prependRight(this.body.end, d += \"\\n\" + r + \"}\");\n } else {\n var f = h + \"(\" + a + \");\";\n \"DoWhileStatement\" === this.type ? e.overwrite(this.start, this.body.start, \"do {\\n\" + n + f + \"\\n\" + r + \"}\") : e.prependRight(this.body.end, f);\n }\n } else s && (e.appendLeft(this.body.start, \"{ \"), e.prependRight(this.body.end, \" }\"));\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n Ze = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return t || !this.createdScope ? this.parent.findScope(t) : this.body.scope;\n }, e.prototype.transpile = function (e, i) {\n var s = this,\n r = this.getIndentation() + e.getIndentString();\n\n if (this.shouldRewriteAsFunction) {\n var n = \"VariableDeclaration\" === this.init.type ? this.init.declarations.map(function (t) {\n return ye(t.id);\n }) : [],\n a = this.aliases;\n this.args = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].outer : t;\n }), this.params = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].inner : t;\n });\n var o = Object.keys(this.reassigned).map(function (t) {\n return a[t].outer + \" = \" + a[t].inner + \";\";\n });\n o.length && (this.body.synthetic ? e.appendLeft(this.body.body[0].end, \"; \" + o.join(\" \")) : e.appendLeft(this.body.body[this.body.body.length - 1].end, \"\\n\\n\" + r + o.join(\"\\n\" + r)));\n }\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n}(Ye),\n ti = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return t || !this.createdScope ? this.parent.findScope(t) : this.body.scope;\n }, e.prototype.transpile = function (e, i) {\n var s = this,\n r = \"VariableDeclaration\" === this.left.type;\n\n if (this.shouldRewriteAsFunction) {\n var n = r ? this.left.declarations.map(function (t) {\n return ye(t.id);\n }) : [];\n this.args = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].outer : t;\n }), this.params = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].inner : t;\n });\n }\n\n t.prototype.transpile.call(this, e, i);\n var a = r ? this.left.declarations[0].id : this.left;\n \"Identifier\" !== a.type && this.destructurePattern(e, a, r);\n }, e.prototype.destructurePattern = function (t, e, i) {\n var s = this.findScope(!0),\n r = this.getIndentation() + t.getIndentString(),\n n = s.createIdentifier(\"ref\"),\n a = this.body.body.length ? this.body.body[0].start : this.body.start + 1;\n t.move(e.start, e.end, a), t.prependRight(e.end, i ? n : \"var \" + n);\n var o = [];\n Ae(t, function (t) {\n return s.createIdentifier(t);\n }, function (t) {\n return s.resolveName(t.name);\n }, e, n, !1, o);\n var p = \";\\n\" + r;\n o.forEach(function (t, e) {\n e === o.length - 1 && (p = \";\\n\\n\" + r), t(a, \"\", p);\n });\n }, e;\n}(Ye),\n ei = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.forOf && !e.dangerousForOf && we.missingTransform(\"for-of statements\", \"forOf\", this, \"dangerousForOf\"), this.await && e.asyncAwait && we.missingTransform(\"for-await-of statements\", \"asyncAwait\", this), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.dangerousForOf) if (this.body.body[0]) {\n var s = this.findScope(!0),\n r = this.getIndentation(),\n n = r + e.getIndentString(),\n a = s.createIdentifier(\"i\"),\n o = s.createIdentifier(\"list\");\n this.body.synthetic && (e.prependRight(this.left.start, \"{\\n\" + n), e.appendLeft(this.body.body[0].end, \"\\n\" + r + \"}\"));\n var p = this.body.body[0].start;\n e.remove(this.left.end, this.right.start), e.move(this.left.start, this.left.end, p), e.prependRight(this.right.start, \"var \" + a + \" = 0, \" + o + \" = \"), e.appendLeft(this.right.end, \"; \" + a + \" < \" + o + \".length; \" + a + \" += 1\");\n var h = \"VariableDeclaration\" === this.left.type,\n c = h ? this.left.declarations[0].id : this.left;\n\n if (\"Identifier\" !== c.type) {\n var l = [],\n u = s.createIdentifier(\"ref\");\n Ae(e, function (t) {\n return s.createIdentifier(t);\n }, function (t) {\n return s.resolveName(t.name);\n }, c, u, !h, l);\n var d = \";\\n\" + n;\n l.forEach(function (t, e) {\n e === l.length - 1 && (d = \";\\n\\n\" + n), t(p, \"\", d);\n }), h ? (e.appendLeft(this.left.start + this.left.kind.length + 1, u), e.appendLeft(this.left.end, \" = \" + o + \"[\" + a + \"];\\n\" + n)) : e.appendLeft(this.left.end, \"var \" + u + \" = \" + o + \"[\" + a + \"];\\n\" + n);\n } else e.appendLeft(this.left.end, \" = \" + o + \"[\" + a + \"];\\n\\n\" + n);\n } else \"VariableDeclaration\" === this.left.type && \"var\" === this.left.kind ? (e.remove(this.start, this.left.start), e.appendLeft(this.left.end, \";\"), e.remove(this.left.end, this.end)) : e.remove(this.start, this.end);\n }, e;\n}(Ye),\n ii = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.generator && e.generator && we.missingTransform(\"generators\", \"generator\", this), this.async && e.asyncAwait && we.missingTransform(\"async functions\", \"asyncAwait\", this), this.body.createScope(), this.id && this.findScope(!0).addDeclaration(this.id, \"function\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i), i.trailingFunctionCommas && this.params.length && De(e, this.params[this.params.length - 1].end);\n }, e;\n}(ge),\n si = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.generator && e.generator && we.missingTransform(\"generators\", \"generator\", this), this.async && e.asyncAwait && we.missingTransform(\"async functions\", \"asyncAwait\", this), this.body.createScope(), this.id && this.body.scope.addDeclaration(this.id, \"function\"), t.prototype.initialise.call(this, e);\n var i,\n s = this.parent;\n if (e.conciseMethodProperty && \"Property\" === s.type && \"init\" === s.kind && s.method && \"Identifier\" === s.key.type ? i = s.key.name : e.classes && \"MethodDefinition\" === s.type && \"method\" === s.kind && \"Identifier\" === s.key.type ? i = s.key.name : this.id && \"Identifier\" === this.id.type && (i = this.id.alias || this.id.name), i) for (var r = 0, n = this.params; r < n.length; r += 1) {\n var a = n[r];\n\n if (\"Identifier\" === a.type && i === a.name) {\n var o = this.body.scope,\n p = o.declarations[i],\n h = o.createIdentifier(i);\n a.alias = h;\n\n for (var c = 0, l = p.instances; c < l.length; c += 1) {\n l[c].alias = h;\n }\n\n break;\n }\n }\n }, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i), i.trailingFunctionCommas && this.params.length && De(e, this.params[this.params.length - 1].end);\n }, e;\n}(ge),\n ri = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return this.parent.params && ~this.parent.params.indexOf(this) ? this.parent.body.scope : \"FunctionExpression\" === this.parent.type && this === this.parent.id ? this.parent.body.scope : this.parent.findScope(t);\n }, e.prototype.initialise = function (t) {\n if (function t(e, i) {\n return \"MemberExpression\" === e.type ? !e.computed && t(e.object, e) : \"Identifier\" === e.type ? !i || !/(Function|Class)Expression/.test(i.type) && (\"VariableDeclarator\" === i.type ? e === i.init : \"MemberExpression\" === i.type || \"MethodDefinition\" === i.type ? i.computed || e === i.object : \"ArrayPattern\" !== i.type && (\"Property\" === i.type ? \"ObjectPattern\" !== i.parent.type && (i.computed || e === i.value) : \"MethodDefinition\" !== i.type && (\"ExportSpecifier\" !== i.type || e === i.local))) : void 0;\n }(this, this.parent)) {\n if (t.arrow && \"arguments\" === this.name && !this.findScope(!1).contains(this.name)) {\n var e = this.findLexicalBoundary(),\n i = this.findNearest(\"ArrowFunctionExpression\"),\n s = this.findNearest(Xe);\n i && i.depth > e.depth && (this.alias = e.getArgumentsAlias()), s && s.body.contains(this) && s.depth > e.depth && (this.alias = e.getArgumentsAlias());\n }\n\n this.findScope(!1).addReference(this);\n }\n }, e.prototype.transpile = function (t) {\n this.alias && t.overwrite(this.start, this.end, this.alias, {\n storeName: !0,\n contentOnly: !0\n });\n }, e;\n}(ge),\n ni = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n (\"BlockStatement\" !== this.consequent.type || \"BlockStatement\" === this.consequent.type && this.consequent.synthetic) && (e.appendLeft(this.consequent.start, \"{ \"), e.prependRight(this.consequent.end, \" }\")), this.alternate && \"IfStatement\" !== this.alternate.type && (\"BlockStatement\" !== this.alternate.type || \"BlockStatement\" === this.alternate.type && this.alternate.synthetic) && (e.appendLeft(this.alternate.start, \"{ \"), e.prependRight(this.alternate.end, \" }\")), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n ai = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleImport && we.missingTransform(\"dynamic import expressions\", \"moduleImport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n oi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleImport && we.missingTransform(\"import\", \"moduleImport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n pi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.findScope(!0).addDeclaration(this.local, \"import\"), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n hi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.findScope(!0).addDeclaration(this.local, \"import\"), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n ci = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n var s,\n r = this.name;\n e.overwrite(r.start, this.value ? this.value.start : this.name.end, (/-/.test(s = r.name) ? \"'\" + s + \"'\" : s) + \": \" + (this.value ? \"\" : \"true\")), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n li = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n var e,\n i = !0,\n s = this.parent.children[this.parent.children.length - 1];\n (s && \"JSXText\" === (e = s).type && !/\\S/.test(e.value) && /\\n/.test(e.value) || this.parent.openingElement.attributes.length) && (i = !1), t.overwrite(this.start, this.end, i ? \" )\" : \")\");\n }, e;\n}(ge),\n ui = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n var e,\n i = !0,\n s = this.parent.children[this.parent.children.length - 1];\n s && \"JSXText\" === (e = s).type && !/\\S/.test(e.value) && /\\n/.test(e.value) && (i = !1), t.overwrite(this.start, this.end, i ? \" )\" : \")\");\n }, e;\n}(ge);\n\nfunction di(t, e) {\n return t = t.replace(/\\u00a0/g, \" \"), e && /\\n/.test(t) && (t = t.replace(/\\s+$/, \"\")), t = t.replace(/^\\n\\r?\\s+/, \"\").replace(/\\s*\\n\\r?\\s*/gm, \" \"), JSON.stringify(t);\n}\n\nvar fi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i);\n var s = this.children.filter(function (t) {\n return \"JSXText\" !== t.type || /\\S/.test(t.raw) || !/\\n/.test(t.raw);\n });\n\n if (s.length) {\n var r,\n n = (this.openingElement || this.openingFragment).end;\n\n for (r = 0; r < s.length; r += 1) {\n var a = s[r];\n\n if (\"JSXExpressionContainer\" === a.type && \"JSXEmptyExpression\" === a.expression.type || e.appendLeft(n, \",\" + (\"\\n\" === e.original[n] && \"JSXText\" !== a.type ? \"\" : \" \")), \"JSXText\" === a.type) {\n var o = di(a.value, r === s.length - 1);\n e.overwrite(a.start, a.end, o);\n }\n\n n = a.end;\n }\n }\n }, e;\n}(ge),\n mi = /[\\u2028-\\u2029]/g,\n gi = {\n ArrayExpression: Ve,\n ArrowFunctionExpression: Be,\n AssignmentExpression: Me,\n AwaitExpression: Ue,\n BinaryExpression: qe,\n BreakStatement: Je,\n CallExpression: We,\n ClassBody: ze,\n ClassDeclaration: He,\n ClassExpression: Ge,\n ContinueStatement: Qe,\n DoWhileStatement: Ye,\n ExportNamedDeclaration: $e,\n ExportDefaultDeclaration: Ke,\n ForStatement: Ze,\n ForInStatement: ti,\n ForOfStatement: ei,\n FunctionDeclaration: ii,\n FunctionExpression: si,\n Identifier: ri,\n IfStatement: ni,\n Import: ai,\n ImportDeclaration: oi,\n ImportDefaultSpecifier: pi,\n ImportSpecifier: hi,\n JSXAttribute: ci,\n JSXClosingElement: li,\n JSXClosingFragment: ui,\n JSXElement: fi,\n JSXExpressionContainer: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n e.remove(this.start, this.expression.start), e.remove(this.expression.end, this.end), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n JSXFragment: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e;\n }(fi),\n JSXOpeningElement: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i), e.overwrite(this.start, this.name.start, this.program.jsx + \"( \");\n var s = \"JSXIdentifier\" === this.name.type && this.name.name[0] === this.name.name[0].toLowerCase();\n s && e.prependRight(this.name.start, \"'\");\n var r = this.attributes.length,\n n = this.name.end;\n\n if (r) {\n var a,\n o,\n p,\n h = !1;\n\n for (a = 0; a < r; a += 1) {\n if (\"JSXSpreadAttribute\" === this.attributes[a].type) {\n h = !0;\n break;\n }\n }\n\n for (n = this.attributes[0].end, a = 0; a < r; a += 1) {\n var c = this.attributes[a];\n\n if (a > 0 && (c.start === n ? e.prependRight(n, \", \") : e.overwrite(n, c.start, \", \")), h && \"JSXSpreadAttribute\" !== c.type) {\n var l = this.attributes[a - 1],\n u = this.attributes[a + 1];\n l && \"JSXSpreadAttribute\" !== l.type || e.prependRight(c.start, \"{ \"), u && \"JSXSpreadAttribute\" !== u.type || e.appendLeft(c.end, \" }\");\n }\n\n n = c.end;\n }\n\n if (h) {\n if (1 === r) p = s ? \"',\" : \",\";else {\n if (!this.program.options.objectAssign) throw new we(\"Mixed JSX attributes ending in spread requires specified objectAssign option with 'Object.assign' or polyfill helper.\", this);\n p = s ? \"', \" + this.program.options.objectAssign + \"({},\" : \", \" + this.program.options.objectAssign + \"({},\", o = \")\";\n }\n } else p = s ? \"', {\" : \", {\", o = \" }\";\n e.prependRight(this.name.end, p), o && e.appendLeft(this.attributes[r - 1].end, o);\n } else e.appendLeft(this.name.end, s ? \"', null\" : \", null\"), n = this.name.end;\n\n this.selfClosing ? e.overwrite(n, this.end, this.attributes.length ? \")\" : \" )\") : e.remove(n, this.end);\n }, e;\n }(ge),\n JSXOpeningFragment: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n t.overwrite(this.start, this.end, this.program.jsx + \"( React.Fragment, null\");\n }, e;\n }(ge),\n JSXSpreadAttribute: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n e.remove(this.start, this.argument.start), e.remove(this.argument.end, this.end), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n Literal: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function () {\n \"string\" == typeof this.value && this.program.indentExclusionElements.push(this);\n }, e.prototype.transpile = function (t, e) {\n e.numericLiteral && this.raw.match(/^0[bo]/i) && t.overwrite(this.start, this.end, String(this.value), {\n storeName: !0,\n contentOnly: !0\n }), \"string\" == typeof this.value && this.value.match(mi) && t.overwrite(this.start, this.end, this.raw.replace(mi, function (t) {\n return \"\\u2028\" == t ? \"\\\\u2028\" : \"\\\\u2029\";\n }), {\n contentOnly: !0\n });\n }, e;\n }(ge),\n MemberExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n i.reservedProperties && xe[this.property.name] && (e.overwrite(this.object.end, this.property.start, \"['\"), e.appendLeft(this.property.end, \"']\")), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n NewExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (e.spreadRest && this.arguments.length) for (var i = this.findLexicalBoundary(), s = this.arguments.length; s--;) {\n var r = this.arguments[s];\n\n if (\"SpreadElement\" === r.type && Te(r.argument)) {\n this.argumentsArrayAlias = i.getArgumentsArrayAlias();\n break;\n }\n }\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.spreadRest && this.arguments.length && Re(e, this, this.arguments), i.spreadRest && this.arguments.length) {\n var s = this.arguments[0];\n je(e, this.arguments, s.start, this.argumentsArrayAlias, !0) && (e.prependRight(this.start + \"new\".length, \" (Function.prototype.bind.apply(\"), e.overwrite(this.callee.end, s.start, \", [ null ].concat( \"), e.appendLeft(this.end, \" ))\"));\n }\n\n this.arguments.length && De(e, this.arguments[this.arguments.length - 1].end);\n }, e;\n }(ge),\n ObjectExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n var s;\n t.prototype.transpile.call(this, e, i);\n\n for (var r = this.start + 1, n = 0, a = 0, o = null, p = null, h = 0; h < this.properties.length; ++h) {\n var c = this.properties[h];\n\n if (\"SpreadElement\" === c.type) {\n var l = c.argument;\n \"ObjectExpression\" === l.type || \"Literal\" === l.type && \"string\" != typeof l.value ? \"ObjectExpression\" === l.type && l.properties.length > 0 ? (e.remove(c.start, l.properties[0].start), e.remove(l.properties[l.properties.length - 1].end, c.end), (s = this.properties).splice.apply(s, [h, 1].concat(l.properties)), h--) : (e.remove(c.start, h === this.properties.length - 1 ? c.end : this.properties[h + 1].start), this.properties.splice(h, 1), h--) : (n += 1, null === o && (o = h));\n } else c.computed && i.computedProperty && (a += 1, null === p && (p = h));\n }\n\n if (!n || i.objectRestSpread || a && i.computedProperty) {\n if (n) {\n if (!this.program.options.objectAssign) throw new we(\"Object spread operator requires specified objectAssign option with 'Object.assign' or polyfill helper.\", this);\n\n for (var u = this.properties.length; u--;) {\n var d = this.properties[u];\n\n if (\"Property\" === d.type && !a) {\n var f = this.properties[u - 1],\n m = this.properties[u + 1];\n f && \"Property\" === f.type || e.prependRight(d.start, \"{\"), m && \"Property\" === m.type || e.appendLeft(d.end, \"}\");\n }\n\n \"SpreadElement\" === d.type && (e.remove(d.start, d.argument.start), e.remove(d.argument.end, d.end));\n }\n\n r = this.properties[0].start, a ? \"SpreadElement\" === this.properties[0].type ? (e.overwrite(this.start, r, this.program.options.objectAssign + \"({}, \"), e.remove(this.end - 1, this.end), e.appendRight(this.end, \")\")) : (e.prependLeft(this.start, this.program.options.objectAssign + \"(\"), e.appendRight(this.end, \")\")) : (e.overwrite(this.start, r, this.program.options.objectAssign + \"({}, \"), e.overwrite(this.properties[this.properties.length - 1].end, this.end, \")\"));\n }\n } else n = 0, o = null;\n\n if (a && i.computedProperty) {\n var g,\n y,\n v = this.getIndentation();\n \"VariableDeclarator\" === this.parent.type && 1 === this.parent.parent.declarations.length && \"Identifier\" === this.parent.id.type ? (g = !0, y = this.parent.id.alias || this.parent.id.name) : \"AssignmentExpression\" === this.parent.type && \"ExpressionStatement\" === this.parent.parent.type && \"Identifier\" === this.parent.left.type ? (g = !0, y = this.parent.left.alias || this.parent.left.name) : \"AssignmentPattern\" === this.parent.type && \"Identifier\" === this.parent.left.type && (g = !0, y = this.parent.left.alias || this.parent.left.name), n && (g = !1), y = this.findScope(!1).resolveName(y);\n var x = r,\n b = this.end;\n g || (null === o || p < o ? (y = this.findScope(!0).createDeclaration(\"obj\"), e.prependRight(this.start, \"( \" + y + \" = \")) : y = null);\n\n for (var _, S = this.properties.length, k = !1, w = !0, E = 0; E < S; E += 1) {\n var C = this.properties[E],\n A = E > 0 ? this.properties[E - 1].end : x;\n\n if (\"Property\" === C.type && (C.computed || _ && !n)) {\n if (0 === E && (A = this.start + 1), _ = C, y) {\n var I = (g ? \";\\n\" + v + y : \", \" + y) + (\"Literal\" === C.key.type || C.computed ? \"\" : \".\");\n A < C.start ? e.overwrite(A, C.start, I) : e.prependRight(C.start, I);\n } else y = this.findScope(!0).createDeclaration(\"obj\"), e.appendRight(C.start, \"( \" + y + \" = {}, \" + y + (C.computed ? \"\" : \".\"));\n\n var L = C.key.end;\n\n if (C.computed) {\n for (; \"]\" !== e.original[L];) {\n L += 1;\n }\n\n L += 1;\n }\n\n \"Literal\" !== C.key.type || C.computed ? C.shorthand || C.method && !C.computed && i.conciseMethodProperty ? e.overwrite(C.key.start, C.key.end, e.slice(C.key.start, C.key.end).replace(/:/, \" =\")) : (C.value.start > L && e.remove(L, C.value.start), e.prependLeft(L, \" = \")) : e.overwrite(C.start, C.key.end + 1, \"[\" + e.slice(C.start, C.key.end) + \"] = \"), !C.method || !C.computed && i.conciseMethodProperty || (C.value.generator && e.remove(C.start, C.key.start), e.prependRight(C.value.start, \"function\" + (C.value.generator ? \"*\" : \"\") + \" \"));\n } else \"SpreadElement\" === C.type ? y && E > 0 && (_ || (_ = this.properties[E - 1]), e.appendLeft(_.end, \", \" + y + \" )\"), _ = null, y = null) : (!w && n && (e.prependRight(C.start, \"{\"), e.appendLeft(C.end, \"}\")), k = !0);\n\n if (w && (\"SpreadElement\" === C.type || C.computed)) {\n var N = k ? this.properties[this.properties.length - 1].end : this.end - 1;\n \",\" == e.original[N] && ++N;\n var P = e.slice(N, b);\n e.prependLeft(A, P), e.remove(N, b), w = !1;\n }\n\n var T = C.end;\n if (E < S - 1 && !k) for (; \",\" !== e.original[T];) {\n T += 1;\n } else E == S - 1 && (T = this.end);\n C.end != T && e.overwrite(C.end, T, \"\", {\n contentOnly: !0\n });\n }\n\n !g && y && e.appendLeft(_.end, \", \" + y + \" )\");\n }\n }, e;\n }(ge),\n Property: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n \"get\" !== this.kind && \"set\" !== this.kind || !e.getterSetter || we.missingTransform(\"getters and setters\", \"getterSetter\", this), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.conciseMethodProperty && !this.computed && \"ObjectPattern\" !== this.parent.type) if (this.shorthand) e.prependRight(this.start, this.key.name + \": \");else if (this.method) {\n var s = \"\";\n !1 !== this.program.options.namedFunctionExpressions && (s = \" \" + (s = \"Literal\" === this.key.type && \"number\" == typeof this.key.value ? \"\" : \"Identifier\" === this.key.type ? xe[this.key.name] || !/^[a-z_$][a-z0-9_$]*$/i.test(this.key.name) || this.value.body.scope.references[this.key.name] ? this.findScope(!0).createIdentifier(this.key.name) : this.key.name : this.findScope(!0).createIdentifier(this.key.value))), this.start < this.key.start && e.remove(this.start, this.key.start), e.appendLeft(this.key.end, \": \" + (this.value.async ? \"async \" : \"\") + \"function\" + (this.value.generator ? \"*\" : \"\") + s);\n }\n i.reservedProperties && xe[this.key.name] && (e.prependRight(this.key.start, \"'\"), e.appendLeft(this.key.end, \"'\"));\n }, e;\n }(ge),\n ReturnStatement: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n this.loop = this.findNearest(Xe), this.nearestFunction = this.findNearest(/Function/), this.loop && (!this.nearestFunction || this.loop.depth > this.nearestFunction.depth) && (this.loop.canReturn = !0, this.shouldWrap = !0), this.argument && this.argument.initialise(t);\n }, e.prototype.transpile = function (t, e) {\n var i = this.shouldWrap && this.loop && this.loop.shouldRewriteAsFunction;\n this.argument ? (i && t.prependRight(this.argument.start, \"{ v: \"), this.argument.transpile(t, e), i && t.appendLeft(this.argument.end, \" }\")) : i && t.appendLeft(this.start + 6, \" {}\");\n }, e;\n }(ge),\n Super: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n if (t.classes) {\n if (this.method = this.findNearest(\"MethodDefinition\"), !this.method) throw new we(\"use of super outside class method\", this);\n var e = this.findNearest(\"ClassBody\").parent;\n if (this.superClassName = e.superClass && (e.superClass.name || \"superclass\"), !this.superClassName) throw new we(\"super used in base class\", this);\n if (this.isCalled = \"CallExpression\" === this.parent.type && this === this.parent.callee, \"constructor\" !== this.method.kind && this.isCalled) throw new we(\"super() not allowed outside class constructor\", this);\n if (this.isMember = \"MemberExpression\" === this.parent.type, !this.isCalled && !this.isMember) throw new we(\"Unexpected use of `super` (expected `super(...)` or `super.*`)\", this);\n }\n\n if (t.arrow) {\n var i = this.findLexicalBoundary(),\n s = this.findNearest(\"ArrowFunctionExpression\"),\n r = this.findNearest(Xe);\n s && s.depth > i.depth && (this.thisAlias = i.getThisAlias()), r && r.body.contains(this) && r.depth > i.depth && (this.thisAlias = i.getThisAlias());\n }\n }, e.prototype.transpile = function (t, e) {\n if (e.classes) {\n t.overwrite(this.start, this.end, this.isCalled || this.method.static ? this.superClassName : this.superClassName + \".prototype\", {\n storeName: !0,\n contentOnly: !0\n });\n var i = this.isCalled ? this.parent : this.parent.parent;\n\n if (i && \"CallExpression\" === i.type) {\n this.noCall || t.appendLeft(i.callee.end, \".call\");\n var s = this.thisAlias || \"this\";\n i.arguments.length ? t.appendLeft(i.arguments[0].start, s + \", \") : t.appendLeft(i.end - 1, \"\" + s);\n }\n }\n }, e;\n }(ge),\n TaggedTemplateExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.templateString && !e.dangerousTaggedTemplateString && we.missingTransform(\"tagged template strings\", \"templateString\", this, \"dangerousTaggedTemplateString\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (i.templateString && i.dangerousTaggedTemplateString) {\n var s = this.quasi.expressions.concat(this.quasi.quasis).sort(function (t, e) {\n return t.start - e.start;\n }),\n r = this.program.body.scope,\n n = this.quasi.quasis.map(function (t) {\n return JSON.stringify(t.value.cooked);\n }).join(\", \"),\n a = this.program.templateLiteralQuasis[n];\n a || (a = r.createIdentifier(\"templateObject\"), e.prependLeft(this.program.prependAt, \"var \" + a + \" = Object.freeze([\" + n + \"]);\\n\"), this.program.templateLiteralQuasis[n] = a), e.overwrite(this.tag.end, s[0].start, \"(\" + a);\n var o = s[0].start;\n s.forEach(function (t) {\n \"TemplateElement\" === t.type ? e.remove(o, t.end) : e.overwrite(o, t.start, \", \"), o = t.end;\n }), e.overwrite(o, this.end, \")\");\n }\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n TemplateElement: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function () {\n this.program.indentExclusionElements.push(this);\n }, e;\n }(ge),\n TemplateLiteral: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.templateString && \"TaggedTemplateExpression\" !== this.parent.type) {\n var s = this.expressions.concat(this.quasis).sort(function (t, e) {\n return t.start - e.start || t.end - e.end;\n }).filter(function (t, e) {\n return \"TemplateElement\" !== t.type || !!t.value.raw || !e;\n });\n\n if (s.length >= 3) {\n var r = s[0];\n \"TemplateElement\" === r.type && \"\" === r.value.raw && \"TemplateElement\" === s[2].type && s.shift();\n }\n\n var n = !(1 === this.quasis.length && 0 === this.expressions.length || \"TemplateLiteral\" === this.parent.type || \"AssignmentExpression\" === this.parent.type || \"AssignmentPattern\" === this.parent.type || \"VariableDeclarator\" === this.parent.type || \"BinaryExpression\" === this.parent.type && \"+\" === this.parent.operator);\n n && e.appendRight(this.start, \"(\");\n var a = this.start;\n s.forEach(function (t, i) {\n var s = 0 === i ? n ? \"(\" : \"\" : \" + \";\n if (\"TemplateElement\" === t.type) e.overwrite(a, t.end, s + JSON.stringify(t.value.cooked));else {\n var r = \"Identifier\" !== t.type;\n r && (s += \"(\"), e.remove(a, t.start), s && e.prependRight(t.start, s), r && e.appendLeft(t.end, \")\");\n }\n a = t.end;\n }), n && e.appendLeft(a, \")\"), e.overwrite(a, this.end, \"\", {\n contentOnly: !0\n });\n }\n }, e;\n }(ge),\n ThisExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n var e = this.findLexicalBoundary();\n if (t.letConst) for (var i = this.findNearest(Xe); i && i.depth > e.depth;) {\n i.thisRefs.push(this), i = i.parent.findNearest(Xe);\n }\n\n if (t.arrow) {\n var s = this.findNearest(\"ArrowFunctionExpression\");\n s && s.depth > e.depth && (this.alias = e.getThisAlias());\n }\n }, e.prototype.transpile = function (t) {\n this.alias && t.overwrite(this.start, this.end, this.alias, {\n storeName: !0,\n contentOnly: !0\n });\n }, e;\n }(ge),\n UpdateExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (\"Identifier\" === this.argument.type) {\n var i = this.findScope(!1).findDeclaration(this.argument.name),\n s = i && i.node.ancestor(3);\n s && \"ForStatement\" === s.type && s.body.contains(this) && (s.reassigned[this.argument.name] = !0);\n }\n\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n \"Identifier\" === this.argument.type && Fe(this.argument, this.findScope(!1)), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n VariableDeclaration: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n this.scope = this.findScope(\"var\" === this.kind), this.declarations.forEach(function (e) {\n return e.initialise(t);\n });\n }, e.prototype.transpile = function (t, e) {\n var i = this,\n s = this.getIndentation(),\n r = this.kind;\n\n if (e.letConst && \"var\" !== r && t.overwrite(this.start, this.start + this.kind.length, r = \"var\", {\n contentOnly: !0,\n storeName: !0\n }), e.destructuring && \"ForOfStatement\" !== this.parent.type && \"ForInStatement\" !== this.parent.type) {\n var n,\n a = this.start;\n this.declarations.forEach(function (r, o) {\n if (r.transpile(t, e), \"Identifier\" === r.id.type) o > 0 && \"Identifier\" !== i.declarations[o - 1].id.type && t.overwrite(a, r.id.start, \"var \");else {\n var p = Xe.test(i.parent.type);\n 0 === o ? t.remove(a, r.id.start) : t.overwrite(a, r.id.start, \";\\n\" + s);\n var h = \"Identifier\" === r.init.type && !r.init.rewritten,\n c = h ? r.init.alias || r.init.name : r.findScope(!0).createIdentifier(\"ref\");\n a = r.start;\n var l = [];\n h ? t.remove(r.id.end, r.end) : l.push(function (e, i, s) {\n t.prependRight(r.id.end, \"var \" + c), t.appendLeft(r.init.end, \"\" + s), t.move(r.id.end, r.end, e);\n });\n var u = r.findScope(!1);\n Ae(t, function (t) {\n return u.createIdentifier(t);\n }, function (t) {\n return u.resolveName(t.name);\n }, r.id, c, p, l);\n var d = p ? \"var \" : \"\",\n f = p ? \", \" : \";\\n\" + s;\n l.forEach(function (t, e) {\n o === i.declarations.length - 1 && e === l.length - 1 && (f = p ? \"\" : \";\"), t(r.start, 0 === e ? d : \"\", f);\n });\n }\n a = r.end, n = \"Identifier\" !== r.id.type;\n }), n && this.end > a && t.overwrite(a, this.end, \"\", {\n contentOnly: !0\n });\n } else this.declarations.forEach(function (i) {\n i.transpile(t, e);\n });\n }, e;\n }(ge),\n VariableDeclarator: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n var i = this.parent.kind;\n \"let\" === i && \"ForStatement\" === this.parent.parent.type && (i = \"for.let\"), this.parent.scope.addDeclaration(this.id, i), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (t, e) {\n if (!this.init && e.letConst && \"var\" !== this.parent.kind) {\n var i = this.findNearest(/Function|^For(In|Of)?Statement|^(?:Do)?WhileStatement/);\n !i || /Function/.test(i.type) || this.isLeftDeclaratorOfLoop() || t.appendLeft(this.id.end, \" = (void 0)\");\n }\n\n this.id && this.id.transpile(t, e), this.init && this.init.transpile(t, e);\n }, e.prototype.isLeftDeclaratorOfLoop = function () {\n return this.parent && \"VariableDeclaration\" === this.parent.type && this.parent.parent && (\"ForInStatement\" === this.parent.parent.type || \"ForOfStatement\" === this.parent.parent.type) && this.parent.parent.left && this.parent.parent.left.declarations[0] === this;\n }, e;\n }(ge),\n WhileStatement: Ye\n},\n yi = {\n Program: [\"body\"],\n Literal: []\n},\n vi = {\n IfStatement: \"consequent\",\n ForStatement: \"body\",\n ForInStatement: \"body\",\n ForOfStatement: \"body\",\n WhileStatement: \"body\",\n DoWhileStatement: \"body\",\n ArrowFunctionExpression: \"body\"\n};\n\nfunction xi(t, e, i, s) {\n this.type = \"Root\", this.jsx = s.jsx || \"React.createElement\", this.options = s, this.source = t, this.magicString = new fe(t), this.ast = e, this.depth = 0, function t(e, i) {\n if (e) if (\"length\" in e) for (var s = e.length; s--;) {\n t(e[s], i);\n } else if (!e.__wrapped) {\n e.__wrapped = !0, yi[e.type] || (yi[e.type] = Object.keys(e).filter(function (t) {\n return \"object\" == typeof e[t];\n }));\n var r = vi[e.type];\n\n if (r && \"BlockStatement\" !== e[r].type) {\n var n = e[r];\n e[r] = {\n start: n.start,\n end: n.end,\n type: \"BlockStatement\",\n body: [n],\n synthetic: !0\n };\n }\n\n e.parent = i, e.program = i.program || i, e.depth = i.depth + 1, e.keys = yi[e.type], e.indentation = void 0;\n\n for (var a = 0, o = yi[e.type]; a < o.length; a += 1) {\n t(e[o[a]], e);\n }\n\n e.program.magicString.addSourcemapLocation(e.start), e.program.magicString.addSourcemapLocation(e.end), e.__proto__ = ((\"BlockStatement\" === e.type ? Pe : gi[e.type]) || ge).prototype;\n }\n }(this.body = e, this), this.body.__proto__ = Pe.prototype, this.templateLiteralQuasis = Object.create(null);\n\n for (var r = 0; r < this.body.body.length; ++r) {\n if (!this.body.body[r].directive) {\n this.prependAt = this.body.body[r].start;\n break;\n }\n }\n\n this.objectWithoutPropertiesHelper = null, this.indentExclusionElements = [], this.body.initialise(i), this.indentExclusions = Object.create(null);\n\n for (var n = 0, a = this.indentExclusionElements; n < a.length; n += 1) {\n for (var o = a[n], p = o.start; p < o.end; p += 1) {\n this.indentExclusions[p] = !0;\n }\n }\n\n this.body.transpile(this.magicString, i);\n}\n\nxi.prototype = {\n export: function _export(t) {\n return void 0 === t && (t = {}), {\n code: this.magicString.toString(),\n map: this.magicString.generateMap({\n file: t.file,\n source: t.source,\n includeContent: !1 !== t.includeContent\n })\n };\n },\n findNearest: function findNearest() {\n return null;\n },\n findScope: function findScope() {\n return null;\n },\n getObjectWithoutPropertiesHelper: function getObjectWithoutPropertiesHelper(t) {\n return this.objectWithoutPropertiesHelper || (this.objectWithoutPropertiesHelper = this.body.scope.createIdentifier(\"objectWithoutProperties\"), t.prependLeft(this.prependAt, \"function \" + this.objectWithoutPropertiesHelper + \" (obj, exclude) { var target = {}; for (var k in obj) if (Object.prototype.hasOwnProperty.call(obj, k) && exclude.indexOf(k) === -1) target[k] = obj[k]; return target; }\\n\")), this.objectWithoutPropertiesHelper;\n }\n};\nvar bi = M.extend(Kt, Ht(), function (t) {\n return /*#__PURE__*/function (_t4) {\n _inherits(_class2, _t4);\n\n var _super2 = _createSuper(_class2);\n\n function _class2() {\n _classCallCheck(this, _class2);\n\n return _super2.apply(this, arguments);\n }\n\n _createClass(_class2, [{\n key: \"getTokenFromCode\",\n value: function getTokenFromCode(t) {\n if (35 === t) {\n ++this.pos;\n\n var _t5 = this.readWord1();\n\n return this.finishToken(ee, _t5);\n }\n\n return _get(_getPrototypeOf(_class2.prototype), \"getTokenFromCode\", this).call(this, t);\n }\n }, {\n key: \"parseClass\",\n value: function parseClass(t, e) {\n this._privateBoundNamesStack = this._privateBoundNamesStack || [];\n var i = Object.create(this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1] || null);\n this._privateBoundNamesStack.push(i), this._unresolvedPrivateNamesStack = this._unresolvedPrivateNamesStack || [];\n var s = Object.create(null);\n\n this._unresolvedPrivateNamesStack.push(s);\n\n var r = _get(_getPrototypeOf(_class2.prototype), \"parseClass\", this).call(this, t, e);\n\n if (this._privateBoundNamesStack.pop(), this._unresolvedPrivateNamesStack.pop(), this._unresolvedPrivateNamesStack.length) Object.assign(this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length - 1], s);else {\n var _t6 = Object.keys(s);\n\n _t6.length && (_t6.sort(function (t, e) {\n return s[t] - s[e];\n }), this.raise(s[_t6[0]], \"Usage of undeclared private name\"));\n }\n return r;\n }\n }, {\n key: \"parseClassElement\",\n value: function parseClassElement(t) {\n if (this.eat(Yt.semi)) return null;\n var e = this.startNode();\n\n if (!(this.options.ecmaVersion >= 8) || this.type != ee) {\n if (this.isContextual(\"async\")) {\n $t.lastIndex = this.pos;\n\n var _t7 = $t.exec(this.input),\n _i3 = this.input.charAt(this.pos + _t7[0].length);\n\n if (\";\" === _i3 || \"=\" === _i3) return e.key = this.parseIdent(!0), e.computed = !1, Zt.call(this, e), this.finishNode(e, \"FieldDefinition\"), this.semicolon(), e;\n }\n\n return _get(_getPrototypeOf(_class2.prototype), \"parseClassElement\", this).apply(this, arguments);\n }\n\n return e.key = te.call(this), e.computed = !1, \"constructor\" == e.key.name && this.raise(e.start, \"Classes may not have a field named constructor\"), Object.prototype.hasOwnProperty.call(this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1], e.key.name) && this.raise(e.start, \"Duplicate private element\"), this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1][e.key.name] = !0, delete this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length - 1][e.key.name], Zt.call(this, e), this.finishNode(e, \"FieldDefinition\"), this.semicolon(), e;\n }\n }, {\n key: \"parseClassMethod\",\n value: function parseClassMethod(t, e, i, s) {\n return e || i || \"method\" != t.kind || t.static || this.options.ecmaVersion < 8 || this.type == Yt.parenL ? _get(_getPrototypeOf(_class2.prototype), \"parseClassMethod\", this).apply(this, arguments) : (Zt.call(this, t), delete t.kind, delete t.static, t = this.finishNode(t, \"FieldDefinition\"), this.semicolon(), t);\n }\n }, {\n key: \"parseSubscripts\",\n value: function parseSubscripts(t, e, i, s) {\n for (var _r;;) {\n if (!(_r = this.eat(Yt.bracketL)) && !this.eat(Yt.dot)) return _get(_getPrototypeOf(_class2.prototype), \"parseSubscripts\", this).call(this, t, e, i, s);\n {\n var _s3 = this.startNodeAt(e, i);\n\n _s3.object = t, _r ? _s3.property = this.parseExpression() : this.type == ee ? (_s3.property = te.call(this), this._privateBoundNamesStack.length && this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1][_s3.property.name] || (this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length - 1][_s3.property.name] = _s3.property.start)) : _s3.property = this.parseIdent(!0), _s3.computed = Boolean(_r), _r && this.expect(Yt.bracketR), t = this.finishNode(_s3, \"MemberExpression\");\n }\n }\n }\n }, {\n key: \"parseMaybeUnary\",\n value: function parseMaybeUnary(t, e) {\n var i = _get(_getPrototypeOf(_class2.prototype), \"parseMaybeUnary\", this).call(this, t, e);\n\n return \"delete\" == i.operator && \"MemberExpression\" == i.argument.type && \"PrivateName\" == i.argument.property.type && this.raise(i.start, \"Private elements may not be deleted\"), i;\n }\n }, {\n key: \"parseIdent\",\n value: function parseIdent(t, e) {\n var i = _get(_getPrototypeOf(_class2.prototype), \"parseIdent\", this).call(this, t, e);\n\n return this._inFieldValue && \"arguments\" == i.name && this.raise(i.start, \"A class field initializer may not contain arguments\"), i;\n }\n }, {\n key: \"parseExprAtom\",\n value: function parseExprAtom(t) {\n var e = _get(_getPrototypeOf(_class2.prototype), \"parseExprAtom\", this).call(this, t);\n\n return this._inFieldValue && \"Super\" == e.type && this.raise(e.start, \"A class field initializer may not contain super\"), e;\n }\n }]);\n\n return _class2;\n }(t);\n}),\n _i = [\"getterSetter\", \"arrow\", \"classes\", \"computedProperty\", \"conciseMethodProperty\", \"defaultParameter\", \"destructuring\", \"forOf\", \"generator\", \"letConst\", \"moduleExport\", \"moduleImport\", \"numericLiteral\", \"parameterDestructuring\", \"spreadRest\", \"stickyRegExp\", \"templateString\", \"exponentiation\", \"reservedProperties\", \"trailingFunctionCommas\", \"asyncAwait\", \"objectRestSpread\"],\n Si = [\"dangerousTaggedTemplateString\", \"dangerousForOf\"];\n\nfunction ki(t, e) {\n var i;\n void 0 === e && (e = {});\n var s = null;\n\n try {\n i = bi.parse(t, {\n ecmaVersion: 10,\n preserveParens: !0,\n sourceType: \"module\",\n allowAwaitOutsideFunction: !0,\n allowReturnOutsideFunction: !0,\n allowHashBang: !0,\n onComment: function onComment(t, e) {\n if (!s) {\n var i = /@jsx\\s+([^\\s]+)/.exec(e);\n i && (s = i[1]);\n }\n }\n }), e.jsx = s || e.jsx;\n } catch (e) {\n throw e.snippet = ke(t, e.loc), e.toString = function () {\n return e.name + \": \" + e.message + \"\\n\" + e.snippet;\n }, e;\n }\n\n var r = Object.create(null);\n return _i.forEach(function (t) {\n r[t] = !0;\n }), Si.forEach(function (t) {\n r[t] = !0;\n }), Object.keys(e.transforms || {}).forEach(function (t) {\n if (\"modules\" === t) return \"moduleImport\" in e.transforms || (r.moduleImport = e.transforms.modules), void (\"moduleExport\" in e.transforms || (r.moduleExport = e.transforms.modules));\n if (!(t in r)) throw new Error(\"Unknown transform '\" + t + \"'\");\n r[t] = e.transforms[t];\n }), !0 === e.objectAssign && (e.objectAssign = \"Object.assign\"), new xi(t, i, r, e).export(e);\n}\n\nexport { _i as features, ki as transform };"],"sourceRoot":""} \ No newline at end of file diff --git a/sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js b/sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js new file mode 100644 index 00000000..c48feae6 --- /dev/null +++ b/sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{cSo1:function(t,e,i){"use strict";(function(t){i.d(e,"a",(function(){return Ci}));var r=i("1OyB"),s=i("vuIU"),n=i("ReuC"),a=i("Ji7U"),o=i("md7G"),p=i("foSv");i("n/30"),i("daqR");function h(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(l){return!1}}();return function(){var i,r=Object(p.a)(t);if(e){var s=Object(p.a)(this).constructor;i=Reflect.construct(r,arguments,s)}else i=r.apply(this,arguments);return Object(o.a)(this,i)}}var c={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},l="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",u={5:l,6:l+" const class extends export import super"},d=/^in(stanceof)?$/,f="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࢽऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿯ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞹꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",m="‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ංඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ູົຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭ᳲ-᳴᳷-᳹᷀-᷹᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_",y=new RegExp("["+f+"]"),g=new RegExp("["+f+m+"]");f=m=null;var v=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,477,28,11,0,9,21,190,52,76,44,33,24,27,35,30,0,12,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,54,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,26,230,43,117,63,32,0,257,0,11,39,8,0,22,0,12,39,3,3,20,0,35,56,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,270,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,689,63,129,68,12,0,67,12,65,1,31,6129,15,754,9486,286,82,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,60,67,1213,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,3,5761,15,7472,3104,541],x=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,525,10,176,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,4,9,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,280,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,2214,6,110,6,6,9,792487,239];function b(t,e){for(var i=65536,r=0;rt)return!1;if((i+=e[r+1])>=t)return!0}}function _(t,e){return t<65?36===t:t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&y.test(String.fromCharCode(t)):!1!==e&&b(t,v)))}function k(t,e){return t<48?36===t:t<58||!(t<65)&&(t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&g.test(String.fromCharCode(t)):!1!==e&&(b(t,v)||b(t,x)))))}var S=function(t,e){void 0===e&&(e={}),this.label=t,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop||null,this.updateContext=null};function w(t,e){return new S(t,{beforeExpr:!0,binop:e})}var E={beforeExpr:!0},C={startsExpr:!0},A={};function I(t,e){return void 0===e&&(e={}),e.keyword=t,A[t]=new S(t,e)}var L={num:new S("num",C),regexp:new S("regexp",C),string:new S("string",C),name:new S("name",C),eof:new S("eof"),bracketL:new S("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new S("]"),braceL:new S("{",{beforeExpr:!0,startsExpr:!0}),braceR:new S("}"),parenL:new S("(",{beforeExpr:!0,startsExpr:!0}),parenR:new S(")"),comma:new S(",",E),semi:new S(";",E),colon:new S(":",E),dot:new S("."),question:new S("?",E),arrow:new S("=>",E),template:new S("template"),invalidTemplate:new S("invalidTemplate"),ellipsis:new S("...",E),backQuote:new S("`",C),dollarBraceL:new S("${",{beforeExpr:!0,startsExpr:!0}),eq:new S("=",{beforeExpr:!0,isAssign:!0}),assign:new S("_=",{beforeExpr:!0,isAssign:!0}),incDec:new S("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new S("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:w("||",1),logicalAND:w("&&",2),bitwiseOR:w("|",3),bitwiseXOR:w("^",4),bitwiseAND:w("&",5),equality:w("==/!=/===/!==",6),relational:w("/<=/>=",7),bitShift:w("<>/>>>",8),plusMin:new S("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:w("%",10),star:w("*",10),slash:w("/",10),starstar:new S("**",{beforeExpr:!0}),_break:I("break"),_case:I("case",E),_catch:I("catch"),_continue:I("continue"),_debugger:I("debugger"),_default:I("default",E),_do:I("do",{isLoop:!0,beforeExpr:!0}),_else:I("else",E),_finally:I("finally"),_for:I("for",{isLoop:!0}),_function:I("function",C),_if:I("if"),_return:I("return",E),_switch:I("switch"),_throw:I("throw",E),_try:I("try"),_var:I("var"),_const:I("const"),_while:I("while",{isLoop:!0}),_with:I("with"),_new:I("new",{beforeExpr:!0,startsExpr:!0}),_this:I("this",C),_super:I("super",C),_class:I("class",C),_extends:I("extends",E),_export:I("export"),_import:I("import"),_null:I("null",C),_true:I("true",C),_false:I("false",C),_in:I("in",{beforeExpr:!0,binop:7}),_instanceof:I("instanceof",{beforeExpr:!0,binop:7}),_typeof:I("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:I("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:I("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},P=/\r\n?|\n|\u2028|\u2029/,N=new RegExp(P.source,"g");function O(t,e){return 10===t||13===t||!e&&(8232===t||8233===t)}var j=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,T=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,R=Object.prototype,V=R.hasOwnProperty,D=R.toString;function B(t,e){return V.call(t,e)}var F=Array.isArray||function(t){return"[object Array]"===D.call(t)};function M(t){return new RegExp("^(?:"+t.replace(/ /g,"|")+")$")}var U=function(t,e){this.line=t,this.column=e};U.prototype.offset=function(t){return new U(this.line,this.column+t)};var q=function(t,e,i){this.start=e,this.end=i,null!==t.sourceFile&&(this.source=t.sourceFile)};function J(t,e){for(var i=1,r=0;;){N.lastIndex=r;var s=N.exec(t);if(!(s&&s.index=2015&&(e.ecmaVersion-=2009),null==e.allowReserved&&(e.allowReserved=e.ecmaVersion<5),F(e.onToken)){var r=e.onToken;e.onToken=function(t){return r.push(t)}}return F(e.onComment)&&(e.onComment=function(t,e){return function(i,r,s,n,a,o){var p={type:i?"Block":"Line",value:r,start:s,end:n};t.locations&&(p.loc=new q(this,a,o)),t.ranges&&(p.range=[s,n]),e.push(p)}}(e,e.onComment)),e}(t),this.sourceFile=t.sourceFile,this.keywords=M(u[t.ecmaVersion>=6?6:5]);var r="";if(!t.allowReserved){for(var s=t.ecmaVersion;!(r=c[s]);s--);"module"===t.sourceType&&(r+=" await")}this.reservedWords=M(r);var n=(r?r+" ":"")+c.strict;this.reservedWordsStrict=M(n),this.reservedWordsStrictBind=M(n+" "+c.strictBind),this.input=String(e),this.containsEsc=!1,i?(this.pos=i,this.lineStart=this.input.lastIndexOf("\n",i-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(P).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=L.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===t.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports={},0===this.pos&&t.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(1),this.regexpState=null},H={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0}};z.prototype.parse=function(){var t=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(t)},H.inFunction.get=function(){return(2&this.currentVarScope().flags)>0},H.inGenerator.get=function(){return(8&this.currentVarScope().flags)>0},H.inAsync.get=function(){return(4&this.currentVarScope().flags)>0},H.allowSuper.get=function(){return(64&this.currentThisScope().flags)>0},H.allowDirectSuper.get=function(){return(128&this.currentThisScope().flags)>0},H.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},z.prototype.inNonArrowFunction=function(){return(2&this.currentThisScope().flags)>0},z.extend=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];for(var i=this,r=0;r-1&&this.raiseRecoverable(t.trailingComma,"Comma is not permitted after the rest element");var i=e?t.parenthesizedAssign:t.parenthesizedBind;i>-1&&this.raiseRecoverable(i,"Parenthesized pattern")}},G.checkExpressionErrors=function(t,e){if(!t)return!1;var i=t.shorthandAssign,r=t.doubleProto;if(!e)return i>=0||r>=0;i>=0&&this.raise(i,"Shorthand property assignments are valid only in destructuring patterns"),r>=0&&this.raiseRecoverable(r,"Redefinition of __proto__ property")},G.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos=6&&(t.sourceType=this.options.sourceType),this.finishNode(t,"Program")};var Y={kind:"loop"},Z={kind:"switch"};$.isLet=function(t){if(this.options.ecmaVersion<6||!this.isContextual("let"))return!1;T.lastIndex=this.pos;var e=T.exec(this.input),i=this.pos+e[0].length,r=this.input.charCodeAt(i);if(91===r)return!0;if(t)return!1;if(123===r)return!0;if(_(r,!0)){for(var s=i+1;k(this.input.charCodeAt(s),!0);)++s;var n=this.input.slice(i,s);if(!d.test(n))return!0}return!1},$.isAsyncFunction=function(){if(this.options.ecmaVersion<8||!this.isContextual("async"))return!1;T.lastIndex=this.pos;var t=T.exec(this.input),e=this.pos+t[0].length;return!(P.test(this.input.slice(this.pos,e))||"function"!==this.input.slice(e,e+8)||e+8!==this.input.length&&k(this.input.charAt(e+8)))},$.parseStatement=function(t,e,i){var r,s=this.type,n=this.startNode();switch(this.isLet(t)&&(s=L._var,r="let"),s){case L._break:case L._continue:return this.parseBreakContinueStatement(n,s.keyword);case L._debugger:return this.parseDebuggerStatement(n);case L._do:return this.parseDoStatement(n);case L._for:return this.parseForStatement(n);case L._function:return t&&(this.strict||"if"!==t&&"label"!==t)&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(n,!1,!t);case L._class:return t&&this.unexpected(),this.parseClass(n,!0);case L._if:return this.parseIfStatement(n);case L._return:return this.parseReturnStatement(n);case L._switch:return this.parseSwitchStatement(n);case L._throw:return this.parseThrowStatement(n);case L._try:return this.parseTryStatement(n);case L._const:case L._var:return r=r||this.value,t&&"var"!==r&&this.unexpected(),this.parseVarStatement(n,r);case L._while:return this.parseWhileStatement(n);case L._with:return this.parseWithStatement(n);case L.braceL:return this.parseBlock(!0,n);case L.semi:return this.parseEmptyStatement(n);case L._export:case L._import:return this.options.allowImportExportEverywhere||(e||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),s===L._import?this.parseImport(n):this.parseExport(n,i);default:if(this.isAsyncFunction())return t&&this.unexpected(),this.next(),this.parseFunctionStatement(n,!0,!t);var a=this.value,o=this.parseExpression();return s===L.name&&"Identifier"===o.type&&this.eat(L.colon)?this.parseLabeledStatement(n,a,o,t):this.parseExpressionStatement(n,o)}},$.parseBreakContinueStatement=function(t,e){var i="break"===e;this.next(),this.eat(L.semi)||this.insertSemicolon()?t.label=null:this.type!==L.name?this.unexpected():(t.label=this.parseIdent(),this.semicolon());for(var r=0;r=6?this.eat(L.semi):this.semicolon(),this.finishNode(t,"DoWhileStatement")},$.parseForStatement=function(t){this.next();var e=this.options.ecmaVersion>=9&&(this.inAsync||!this.inFunction&&this.options.allowAwaitOutsideFunction)&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(Y),this.enterScope(0),this.expect(L.parenL),this.type===L.semi)return e>-1&&this.unexpected(e),this.parseFor(t,null);var i=this.isLet();if(this.type===L._var||this.type===L._const||i){var r=this.startNode(),s=i?"let":this.value;return this.next(),this.parseVar(r,!0,s),this.finishNode(r,"VariableDeclaration"),!(this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of"))||1!==r.declarations.length||"var"!==s&&r.declarations[0].init?(e>-1&&this.unexpected(e),this.parseFor(t,r)):(this.options.ecmaVersion>=9&&(this.type===L._in?e>-1&&this.unexpected(e):t.await=e>-1),this.parseForIn(t,r))}var n=new K,a=this.parseExpression(!0,n);return this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of")?(this.options.ecmaVersion>=9&&(this.type===L._in?e>-1&&this.unexpected(e):t.await=e>-1),this.toAssignable(a,!1,n),this.checkLVal(a),this.parseForIn(t,a)):(this.checkExpressionErrors(n,!0),e>-1&&this.unexpected(e),this.parseFor(t,a))},$.parseFunctionStatement=function(t,e,i){return this.next(),this.parseFunction(t,et|(i?0:it),!1,e)},$.parseIfStatement=function(t){return this.next(),t.test=this.parseParenExpression(),t.consequent=this.parseStatement("if"),t.alternate=this.eat(L._else)?this.parseStatement("if"):null,this.finishNode(t,"IfStatement")},$.parseReturnStatement=function(t){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(L.semi)||this.insertSemicolon()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")},$.parseSwitchStatement=function(t){var e;this.next(),t.discriminant=this.parseParenExpression(),t.cases=[],this.expect(L.braceL),this.labels.push(Z),this.enterScope(0);for(var i=!1;this.type!==L.braceR;)if(this.type===L._case||this.type===L._default){var r=this.type===L._case;e&&this.finishNode(e,"SwitchCase"),t.cases.push(e=this.startNode()),e.consequent=[],this.next(),r?e.test=this.parseExpression():(i&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),i=!0,e.test=null),this.expect(L.colon)}else e||this.unexpected(),e.consequent.push(this.parseStatement(null));return this.exitScope(),e&&this.finishNode(e,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(t,"SwitchStatement")},$.parseThrowStatement=function(t){return this.next(),P.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")};var tt=[];$.parseTryStatement=function(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.type===L._catch){var e=this.startNode();if(this.next(),this.eat(L.parenL)){e.param=this.parseBindingAtom();var i="Identifier"===e.param.type;this.enterScope(i?32:0),this.checkLVal(e.param,i?4:2),this.expect(L.parenR)}else this.options.ecmaVersion<10&&this.unexpected(),e.param=null,this.enterScope(0);e.body=this.parseBlock(!1),this.exitScope(),t.handler=this.finishNode(e,"CatchClause")}return t.finalizer=this.eat(L._finally)?this.parseBlock():null,t.handler||t.finalizer||this.raise(t.start,"Missing catch or finally clause"),this.finishNode(t,"TryStatement")},$.parseVarStatement=function(t,e){return this.next(),this.parseVar(t,!1,e),this.semicolon(),this.finishNode(t,"VariableDeclaration")},$.parseWhileStatement=function(t){return this.next(),t.test=this.parseParenExpression(),this.labels.push(Y),t.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(t,"WhileStatement")},$.parseWithStatement=function(t){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),t.object=this.parseParenExpression(),t.body=this.parseStatement("with"),this.finishNode(t,"WithStatement")},$.parseEmptyStatement=function(t){return this.next(),this.finishNode(t,"EmptyStatement")},$.parseLabeledStatement=function(t,e,i,r){for(var s=0,n=this.labels;s=0;o--){var p=this.labels[o];if(p.statementStart!==t.start)break;p.statementStart=this.start,p.kind=a}return this.labels.push({name:e,kind:a,statementStart:this.start}),t.body=this.parseStatement(r?-1===r.indexOf("label")?r+"label":r:"label"),this.labels.pop(),t.label=i,this.finishNode(t,"LabeledStatement")},$.parseExpressionStatement=function(t,e){return t.expression=e,this.semicolon(),this.finishNode(t,"ExpressionStatement")},$.parseBlock=function(t,e){for(void 0===t&&(t=!0),void 0===e&&(e=this.startNode()),e.body=[],this.expect(L.braceL),t&&this.enterScope(0);!this.eat(L.braceR);){var i=this.parseStatement(null);e.body.push(i)}return t&&this.exitScope(),this.finishNode(e,"BlockStatement")},$.parseFor=function(t,e){return t.init=e,this.expect(L.semi),t.test=this.type===L.semi?null:this.parseExpression(),this.expect(L.semi),t.update=this.type===L.parenR?null:this.parseExpression(),this.expect(L.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,"ForStatement")},$.parseForIn=function(t,e){var i=this.type===L._in?"ForInStatement":"ForOfStatement";return this.next(),"ForInStatement"===i&&("AssignmentPattern"===e.type||"VariableDeclaration"===e.type&&null!=e.declarations[0].init&&(this.strict||"Identifier"!==e.declarations[0].id.type))&&this.raise(e.start,"Invalid assignment in for-in loop head"),t.left=e,t.right="ForInStatement"===i?this.parseExpression():this.parseMaybeAssign(),this.expect(L.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,i)},$.parseVar=function(t,e,i){for(t.declarations=[],t.kind=i;;){var r=this.startNode();if(this.parseVarId(r,i),this.eat(L.eq)?r.init=this.parseMaybeAssign(e):"const"!==i||this.type===L._in||this.options.ecmaVersion>=6&&this.isContextual("of")?"Identifier"===r.id.type||e&&(this.type===L._in||this.isContextual("of"))?r.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),t.declarations.push(this.finishNode(r,"VariableDeclarator")),!this.eat(L.comma))break}return t},$.parseVarId=function(t,e){"const"!==e&&"let"!==e||!this.isContextual("let")||this.raiseRecoverable(this.start,"let is disallowed as a lexically bound name"),t.id=this.parseBindingAtom(),this.checkLVal(t.id,"var"===e?1:2,!1)};var et=1,it=2;$.parseFunction=function(t,e,i,r){this.initFunction(t),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!r)&&(this.type===L.star&&e&it&&this.unexpected(),t.generator=this.eat(L.star)),this.options.ecmaVersion>=8&&(t.async=!!r),e&et&&(t.id=4&e&&this.type!==L.name?null:this.parseIdent(),!t.id||e&it||this.checkLVal(t.id,this.strict||t.generator||t.async?this.treatFunctionsAsVar?1:2:3));var s=this.yieldPos,n=this.awaitPos,a=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(W(t.async,t.generator)),e&et||(t.id=this.type===L.name?this.parseIdent():null),this.parseFunctionParams(t),this.parseFunctionBody(t,i,!1),this.yieldPos=s,this.awaitPos=n,this.awaitIdentPos=a,this.finishNode(t,e&et?"FunctionDeclaration":"FunctionExpression")},$.parseFunctionParams=function(t){this.expect(L.parenL),t.params=this.parseBindingList(L.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},$.parseClass=function(t,e){this.next();var i=this.strict;this.strict=!0,this.parseClassId(t,e),this.parseClassSuper(t);var r=this.startNode(),s=!1;for(r.body=[],this.expect(L.braceL);!this.eat(L.braceR);){var n=this.parseClassElement(null!==t.superClass);n&&(r.body.push(n),"MethodDefinition"===n.type&&"constructor"===n.kind&&(s&&this.raise(n.start,"Duplicate constructor in the same class"),s=!0))}return t.body=this.finishNode(r,"ClassBody"),this.strict=i,this.finishNode(t,e?"ClassDeclaration":"ClassExpression")},$.parseClassElement=function(t){var e=this;if(this.eat(L.semi))return null;var i=this.startNode(),r=function(t,r){void 0===r&&(r=!1);var s=e.start,n=e.startLoc;return!(!e.eatContextual(t)||(e.type===L.parenL||r&&e.canInsertSemicolon())&&(i.key&&e.unexpected(),i.computed=!1,i.key=e.startNodeAt(s,n),i.key.name=t,e.finishNode(i.key,"Identifier"),1))};i.kind="method",i.static=r("static");var s=this.eat(L.star),n=!1;s||(this.options.ecmaVersion>=8&&r("async",!0)?(n=!0,s=this.options.ecmaVersion>=9&&this.eat(L.star)):r("get")?i.kind="get":r("set")&&(i.kind="set")),i.key||this.parsePropertyName(i);var a=i.key,o=!1;return i.computed||i.static||!("Identifier"===a.type&&"constructor"===a.name||"Literal"===a.type&&"constructor"===a.value)?i.static&&"Identifier"===a.type&&"prototype"===a.name&&this.raise(a.start,"Classes may not have a static property named prototype"):("method"!==i.kind&&this.raise(a.start,"Constructor can't have get/set modifier"),s&&this.raise(a.start,"Constructor can't be a generator"),n&&this.raise(a.start,"Constructor can't be an async method"),i.kind="constructor",o=t),this.parseClassMethod(i,s,n,o),"get"===i.kind&&0!==i.value.params.length&&this.raiseRecoverable(i.value.start,"getter should have no params"),"set"===i.kind&&1!==i.value.params.length&&this.raiseRecoverable(i.value.start,"setter should have exactly one param"),"set"===i.kind&&"RestElement"===i.value.params[0].type&&this.raiseRecoverable(i.value.params[0].start,"Setter cannot use rest params"),i},$.parseClassMethod=function(t,e,i,r){return t.value=this.parseMethod(e,i,r),this.finishNode(t,"MethodDefinition")},$.parseClassId=function(t,e){this.type===L.name?(t.id=this.parseIdent(),e&&this.checkLVal(t.id,2,!1)):(!0===e&&this.unexpected(),t.id=null)},$.parseClassSuper=function(t){t.superClass=this.eat(L._extends)?this.parseExprSubscripts():null},$.parseExport=function(t,e){if(this.next(),this.eat(L.star))return this.expectContextual("from"),this.type!==L.string&&this.unexpected(),t.source=this.parseExprAtom(),this.semicolon(),this.finishNode(t,"ExportAllDeclaration");if(this.eat(L._default)){var i;if(this.checkExport(e,"default",this.lastTokStart),this.type===L._function||(i=this.isAsyncFunction())){var r=this.startNode();this.next(),i&&this.next(),t.declaration=this.parseFunction(r,4|et,!1,i)}else if(this.type===L._class){var s=this.startNode();t.declaration=this.parseClass(s,"nullableID")}else t.declaration=this.parseMaybeAssign(),this.semicolon();return this.finishNode(t,"ExportDefaultDeclaration")}if(this.shouldParseExportStatement())t.declaration=this.parseStatement(null),"VariableDeclaration"===t.declaration.type?this.checkVariableExport(e,t.declaration.declarations):this.checkExport(e,t.declaration.id.name,t.declaration.id.start),t.specifiers=[],t.source=null;else{if(t.declaration=null,t.specifiers=this.parseExportSpecifiers(e),this.eatContextual("from"))this.type!==L.string&&this.unexpected(),t.source=this.parseExprAtom();else{for(var n=0,a=t.specifiers;n=6&&t)switch(t.type){case"Identifier":this.inAsync&&"await"===t.name&&this.raise(t.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"RestElement":break;case"ObjectExpression":t.type="ObjectPattern",i&&this.checkPatternErrors(i,!0);for(var r=0,s=t.properties;r=8&&!n&&"async"===a.name&&!this.canInsertSemicolon()&&this.eat(L._function))return this.parseFunction(this.startNodeAt(r,s),0,!1,!0);if(i&&!this.canInsertSemicolon()){if(this.eat(L.arrow))return this.parseArrowExpression(this.startNodeAt(r,s),[a],!1);if(this.options.ecmaVersion>=8&&"async"===a.name&&this.type===L.name&&!n)return a=this.parseIdent(!1),!this.canInsertSemicolon()&&this.eat(L.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(r,s),[a],!0)}return a;case L.regexp:var o=this.value;return(e=this.parseLiteral(o.value)).regex={pattern:o.pattern,flags:o.flags},e;case L.num:case L.string:return this.parseLiteral(this.value);case L._null:case L._true:case L._false:return(e=this.startNode()).value=this.type===L._null?null:this.type===L._true,e.raw=this.type.keyword,this.next(),this.finishNode(e,"Literal");case L.parenL:var p=this.start,h=this.parseParenAndDistinguishExpression(i);return t&&(t.parenthesizedAssign<0&&!this.isSimpleAssignTarget(h)&&(t.parenthesizedAssign=p),t.parenthesizedBind<0&&(t.parenthesizedBind=p)),h;case L.bracketL:return e=this.startNode(),this.next(),e.elements=this.parseExprList(L.bracketR,!0,!0,t),this.finishNode(e,"ArrayExpression");case L.braceL:return this.parseObj(!1,t);case L._function:return e=this.startNode(),this.next(),this.parseFunction(e,0);case L._class:return this.parseClass(this.startNode(),!1);case L._new:return this.parseNew();case L.backQuote:return this.parseTemplate();default:this.unexpected()}},st.parseLiteral=function(t){var e=this.startNode();return e.value=t,e.raw=this.input.slice(this.start,this.end),this.next(),this.finishNode(e,"Literal")},st.parseParenExpression=function(){this.expect(L.parenL);var t=this.parseExpression();return this.expect(L.parenR),t},st.parseParenAndDistinguishExpression=function(t){var e,i=this.start,r=this.startLoc,s=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var n,a=this.start,o=this.startLoc,p=[],h=!0,c=!1,l=new K,u=this.yieldPos,d=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==L.parenR;){if(h?h=!1:this.expect(L.comma),s&&this.afterTrailingComma(L.parenR,!0)){c=!0;break}if(this.type===L.ellipsis){n=this.start,p.push(this.parseParenItem(this.parseRestBinding())),this.type===L.comma&&this.raise(this.start,"Comma is not permitted after the rest element");break}p.push(this.parseMaybeAssign(!1,l,this.parseParenItem))}var f=this.start,m=this.startLoc;if(this.expect(L.parenR),t&&!this.canInsertSemicolon()&&this.eat(L.arrow))return this.checkPatternErrors(l,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=u,this.awaitPos=d,this.parseParenArrowList(i,r,p);p.length&&!c||this.unexpected(this.lastTokStart),n&&this.unexpected(n),this.checkExpressionErrors(l,!0),this.yieldPos=u||this.yieldPos,this.awaitPos=d||this.awaitPos,p.length>1?((e=this.startNodeAt(a,o)).expressions=p,this.finishNodeAt(e,"SequenceExpression",f,m)):e=p[0]}else e=this.parseParenExpression();if(this.options.preserveParens){var y=this.startNodeAt(i,r);return y.expression=e,this.finishNode(y,"ParenthesizedExpression")}return e},st.parseParenItem=function(t){return t},st.parseParenArrowList=function(t,e,i){return this.parseArrowExpression(this.startNodeAt(t,e),i)};var nt=[];st.parseNew=function(){var t=this.startNode(),e=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(L.dot)){t.meta=e;var i=this.containsEsc;return t.property=this.parseIdent(!0),("target"!==t.property.name||i)&&this.raiseRecoverable(t.property.start,"The only valid meta property for new is new.target"),this.inNonArrowFunction()||this.raiseRecoverable(t.start,"new.target can only be used in functions"),this.finishNode(t,"MetaProperty")}var r=this.start,s=this.startLoc;return t.callee=this.parseSubscripts(this.parseExprAtom(),r,s,!0),t.arguments=this.eat(L.parenL)?this.parseExprList(L.parenR,this.options.ecmaVersion>=8,!1):nt,this.finishNode(t,"NewExpression")},st.parseTemplateElement=function(t){var e=t.isTagged,i=this.startNode();return this.type===L.invalidTemplate?(e||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),i.value={raw:this.value,cooked:null}):i.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),i.tail=this.type===L.backQuote,this.finishNode(i,"TemplateElement")},st.parseTemplate=function(t){void 0===t&&(t={});var e=t.isTagged;void 0===e&&(e=!1);var i=this.startNode();this.next(),i.expressions=[];var r=this.parseTemplateElement({isTagged:e});for(i.quasis=[r];!r.tail;)this.type===L.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(L.dollarBraceL),i.expressions.push(this.parseExpression()),this.expect(L.braceR),i.quasis.push(r=this.parseTemplateElement({isTagged:e}));return this.next(),this.finishNode(i,"TemplateLiteral")},st.isAsyncProp=function(t){return!t.computed&&"Identifier"===t.key.type&&"async"===t.key.name&&(this.type===L.name||this.type===L.num||this.type===L.string||this.type===L.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===L.star)&&!P.test(this.input.slice(this.lastTokEnd,this.start))},st.parseObj=function(t,e){var i=this.startNode(),r=!0,s={};for(i.properties=[],this.next();!this.eat(L.braceR);){if(r)r=!1;else if(this.expect(L.comma),this.afterTrailingComma(L.braceR))break;var n=this.parseProperty(t,e);t||this.checkPropClash(n,s,e),i.properties.push(n)}return this.finishNode(i,t?"ObjectPattern":"ObjectExpression")},st.parseProperty=function(t,e){var i,r,s,n,a=this.startNode();if(this.options.ecmaVersion>=9&&this.eat(L.ellipsis))return t?(a.argument=this.parseIdent(!1),this.type===L.comma&&this.raise(this.start,"Comma is not permitted after the rest element"),this.finishNode(a,"RestElement")):(this.type===L.parenL&&e&&(e.parenthesizedAssign<0&&(e.parenthesizedAssign=this.start),e.parenthesizedBind<0&&(e.parenthesizedBind=this.start)),a.argument=this.parseMaybeAssign(!1,e),this.type===L.comma&&e&&e.trailingComma<0&&(e.trailingComma=this.start),this.finishNode(a,"SpreadElement"));this.options.ecmaVersion>=6&&(a.method=!1,a.shorthand=!1,(t||e)&&(s=this.start,n=this.startLoc),t||(i=this.eat(L.star)));var o=this.containsEsc;return this.parsePropertyName(a),!t&&!o&&this.options.ecmaVersion>=8&&!i&&this.isAsyncProp(a)?(r=!0,i=this.options.ecmaVersion>=9&&this.eat(L.star),this.parsePropertyName(a,e)):r=!1,this.parsePropertyValue(a,t,i,r,s,n,e,o),this.finishNode(a,"Property")},st.parsePropertyValue=function(t,e,i,r,s,n,a,o){(i||r)&&this.type===L.colon&&this.unexpected(),this.eat(L.colon)?(t.value=e?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,a),t.kind="init"):this.options.ecmaVersion>=6&&this.type===L.parenL?(e&&this.unexpected(),t.kind="init",t.method=!0,t.value=this.parseMethod(i,r)):e||o||!(this.options.ecmaVersion>=5)||t.computed||"Identifier"!==t.key.type||"get"!==t.key.name&&"set"!==t.key.name||this.type===L.comma||this.type===L.braceR?this.options.ecmaVersion>=6&&!t.computed&&"Identifier"===t.key.type?((i||r)&&this.unexpected(),this.checkUnreserved(t.key),"await"!==t.key.name||this.awaitIdentPos||(this.awaitIdentPos=s),t.kind="init",e?t.value=this.parseMaybeDefault(s,n,t.key):this.type===L.eq&&a?(a.shorthandAssign<0&&(a.shorthandAssign=this.start),t.value=this.parseMaybeDefault(s,n,t.key)):t.value=t.key,t.shorthand=!0):this.unexpected():((i||r)&&this.unexpected(),t.kind=t.key.name,this.parsePropertyName(t),t.value=this.parseMethod(!1),t.value.params.length!==("get"===t.kind?0:1)?this.raiseRecoverable(t.value.start,"get"===t.kind?"getter should have no params":"setter should have exactly one param"):"set"===t.kind&&"RestElement"===t.value.params[0].type&&this.raiseRecoverable(t.value.params[0].start,"Setter cannot use rest params"))},st.parsePropertyName=function(t){if(this.options.ecmaVersion>=6){if(this.eat(L.bracketL))return t.computed=!0,t.key=this.parseMaybeAssign(),this.expect(L.bracketR),t.key;t.computed=!1}return t.key=this.type===L.num||this.type===L.string?this.parseExprAtom():this.parseIdent(!0)},st.initFunction=function(t){t.id=null,this.options.ecmaVersion>=6&&(t.generator=t.expression=!1),this.options.ecmaVersion>=8&&(t.async=!1)},st.parseMethod=function(t,e,i){var r=this.startNode(),s=this.yieldPos,n=this.awaitPos,a=this.awaitIdentPos;return this.initFunction(r),this.options.ecmaVersion>=6&&(r.generator=t),this.options.ecmaVersion>=8&&(r.async=!!e),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(64|W(e,r.generator)|(i?128:0)),this.expect(L.parenL),r.params=this.parseBindingList(L.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(r,!1,!0),this.yieldPos=s,this.awaitPos=n,this.awaitIdentPos=a,this.finishNode(r,"FunctionExpression")},st.parseArrowExpression=function(t,e,i){var r=this.yieldPos,s=this.awaitPos,n=this.awaitIdentPos;return this.enterScope(16|W(i,!1)),this.initFunction(t),this.options.ecmaVersion>=8&&(t.async=!!i),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,t.params=this.toAssignableList(e,!0),this.parseFunctionBody(t,!0,!1),this.yieldPos=r,this.awaitPos=s,this.awaitIdentPos=n,this.finishNode(t,"ArrowFunctionExpression")},st.parseFunctionBody=function(t,e,i){var r=this.strict,s=!1;if(e&&this.type!==L.braceL)t.body=this.parseMaybeAssign(),t.expression=!0,this.checkParams(t,!1);else{var n=this.options.ecmaVersion>=7&&!this.isSimpleParamList(t.params);r&&!n||(s=this.strictDirective(this.end))&&n&&this.raiseRecoverable(t.start,"Illegal 'use strict' directive in function with non-simple parameter list");var a=this.labels;this.labels=[],s&&(this.strict=!0),this.checkParams(t,!r&&!s&&!e&&!i&&this.isSimpleParamList(t.params)),t.body=this.parseBlock(!1),t.expression=!1,this.adaptDirectivePrologue(t.body.body),this.labels=a}this.exitScope(),this.strict&&t.id&&this.checkLVal(t.id,5),this.strict=r},st.isSimpleParamList=function(t){for(var e=0,i=t;e-1||s.functions.indexOf(t)>-1||s.var.indexOf(t)>-1,s.lexical.push(t),this.inModule&&1&s.flags&&delete this.undefinedExports[t]}else if(4===e)this.currentScope().lexical.push(t);else if(3===e){var n=this.currentScope();r=this.treatFunctionsAsVar?n.lexical.indexOf(t)>-1:n.lexical.indexOf(t)>-1||n.var.indexOf(t)>-1,n.functions.push(t)}else for(var a=this.scopeStack.length-1;a>=0;--a){var o=this.scopeStack[a];if(o.lexical.indexOf(t)>-1&&!(32&o.flags&&o.lexical[0]===t)||!this.treatFunctionsAsVarInScope(o)&&o.functions.indexOf(t)>-1){r=!0;break}if(o.var.push(t),this.inModule&&1&o.flags&&delete this.undefinedExports[t],3&o.flags)break}r&&this.raiseRecoverable(i,"Identifier '"+t+"' has already been declared")},ot.checkLocalExport=function(t){-1===this.scopeStack[0].lexical.indexOf(t.name)&&-1===this.scopeStack[0].var.indexOf(t.name)&&(this.undefinedExports[t.name]=t)},ot.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},ot.currentVarScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(3&e.flags)return e}},ot.currentThisScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(3&e.flags&&!(16&e.flags))return e}};var ht=function(t,e,i){this.type="",this.start=e,this.end=0,t.options.locations&&(this.loc=new q(t,i)),t.options.directSourceFile&&(this.sourceFile=t.options.directSourceFile),t.options.ranges&&(this.range=[e,0])},ct=z.prototype;function lt(t,e,i,r){return t.type=e,t.end=i,this.options.locations&&(t.loc.end=r),this.options.ranges&&(t.range[1]=i),t}ct.startNode=function(){return new ht(this,this.start,this.startLoc)},ct.startNodeAt=function(t,e){return new ht(this,t,e)},ct.finishNode=function(t,e){return lt.call(this,t,e,this.lastTokEnd,this.lastTokEndLoc)},ct.finishNodeAt=function(t,e,i,r){return lt.call(this,t,e,i,r)};var ut=function(t,e,i,r,s){this.token=t,this.isExpr=!!e,this.preserveSpace=!!i,this.override=r,this.generator=!!s},dt={b_stat:new ut("{",!1),b_expr:new ut("{",!0),b_tmpl:new ut("${",!1),p_stat:new ut("(",!1),p_expr:new ut("(",!0),q_tmpl:new ut("`",!0,!0,(function(t){return t.tryReadTemplateToken()})),f_stat:new ut("function",!1),f_expr:new ut("function",!0),f_expr_gen:new ut("function",!0,!1,null,!0),f_gen:new ut("function",!1,!1,null,!0)},ft=z.prototype;ft.initialContext=function(){return[dt.b_stat]},ft.braceIsBlock=function(t){var e=this.curContext();return e===dt.f_expr||e===dt.f_stat||(t!==L.colon||e!==dt.b_stat&&e!==dt.b_expr?t===L._return||t===L.name&&this.exprAllowed?P.test(this.input.slice(this.lastTokEnd,this.start)):t===L._else||t===L.semi||t===L.eof||t===L.parenR||t===L.arrow||(t===L.braceL?e===dt.b_stat:t!==L._var&&t!==L._const&&t!==L.name&&!this.exprAllowed):!e.isExpr)},ft.inGeneratorContext=function(){for(var t=this.context.length-1;t>=1;t--){var e=this.context[t];if("function"===e.token)return e.generator}return!1},ft.updateContext=function(t){var e,i=this.type;i.keyword&&t===L.dot?this.exprAllowed=!1:(e=i.updateContext)?e.call(this,t):this.exprAllowed=i.beforeExpr},L.parenR.updateContext=L.braceR.updateContext=function(){if(1!==this.context.length){var t=this.context.pop();t===dt.b_stat&&"function"===this.curContext().token&&(t=this.context.pop()),this.exprAllowed=!t.isExpr}else this.exprAllowed=!0},L.braceL.updateContext=function(t){this.context.push(this.braceIsBlock(t)?dt.b_stat:dt.b_expr),this.exprAllowed=!0},L.dollarBraceL.updateContext=function(){this.context.push(dt.b_tmpl),this.exprAllowed=!0},L.parenL.updateContext=function(t){this.context.push(t===L._if||t===L._for||t===L._with||t===L._while?dt.p_stat:dt.p_expr),this.exprAllowed=!0},L.incDec.updateContext=function(){},L._function.updateContext=L._class.updateContext=function(t){!t.beforeExpr||t===L.semi||t===L._else||t===L._return&&P.test(this.input.slice(this.lastTokEnd,this.start))||(t===L.colon||t===L.braceL)&&this.curContext()===dt.b_stat?this.context.push(dt.f_stat):this.context.push(dt.f_expr),this.exprAllowed=!1},L.backQuote.updateContext=function(){this.curContext()===dt.q_tmpl?this.context.pop():this.context.push(dt.q_tmpl),this.exprAllowed=!1},L.star.updateContext=function(t){if(t===L._function){var e=this.context.length-1;this.context[e]=this.context[e]===dt.f_expr?dt.f_expr_gen:dt.f_gen}this.exprAllowed=!0},L.name.updateContext=function(t){var e=!1;this.options.ecmaVersion>=6&&t!==L.dot&&("of"===this.value&&!this.exprAllowed||"yield"===this.value&&this.inGeneratorContext())&&(e=!0),this.exprAllowed=e};var mt="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",yt={9:mt,10:mt+" Extended_Pictographic"},gt="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",vt="Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",xt={9:vt,10:vt+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd"},bt={};function _t(t){var e=bt[t]={binary:M(yt[t]+" "+gt),nonBinary:{General_Category:M(gt),Script:M(xt[t])}};e.nonBinary.Script_Extensions=e.nonBinary.Script,e.nonBinary.gc=e.nonBinary.General_Category,e.nonBinary.sc=e.nonBinary.Script,e.nonBinary.scx=e.nonBinary.Script_Extensions}_t(9),_t(10);var kt=z.prototype,St=function(t){this.parser=t,this.validFlags="gim"+(t.options.ecmaVersion>=6?"uy":"")+(t.options.ecmaVersion>=9?"s":""),this.unicodeProperties=bt[t.options.ecmaVersion>=10?10:t.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};function wt(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode(55296+(t>>10),56320+(1023&t)))}function Et(t){return 36===t||t>=40&&t<=43||46===t||63===t||t>=91&&t<=94||t>=123&&t<=125}function Ct(t){return t>=65&&t<=90||t>=97&&t<=122}function At(t){return Ct(t)||95===t}function It(t){return At(t)||Lt(t)}function Lt(t){return t>=48&&t<=57}function Pt(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function Nt(t){return t>=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t-48}function Ot(t){return t>=48&&t<=55}St.prototype.reset=function(t,e,i){var r=-1!==i.indexOf("u");this.start=0|t,this.source=e+"",this.flags=i,this.switchU=r&&this.parser.options.ecmaVersion>=6,this.switchN=r&&this.parser.options.ecmaVersion>=9},St.prototype.raise=function(t){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+t)},St.prototype.at=function(t){var e=this.source,i=e.length;if(t>=i)return-1;var r=e.charCodeAt(t);return!this.switchU||r<=55295||r>=57344||t+1>=i?r:(r<<10)+e.charCodeAt(t+1)-56613888},St.prototype.nextIndex=function(t){var e=this.source,i=e.length;if(t>=i)return i;var r=e.charCodeAt(t);return!this.switchU||r<=55295||r>=57344||t+1>=i?t+1:t+2},St.prototype.current=function(){return this.at(this.pos)},St.prototype.lookahead=function(){return this.at(this.nextIndex(this.pos))},St.prototype.advance=function(){this.pos=this.nextIndex(this.pos)},St.prototype.eat=function(t){return this.current()===t&&(this.advance(),!0)},kt.validateRegExpFlags=function(t){for(var e=t.validFlags,i=t.flags,r=0;r-1&&this.raise(t.start,"Duplicate regular expression flag")}},kt.validateRegExpPattern=function(t){this.regexp_pattern(t),!t.switchN&&this.options.ecmaVersion>=9&&t.groupNames.length>0&&(t.switchN=!0,this.regexp_pattern(t))},kt.regexp_pattern=function(t){t.pos=0,t.lastIntValue=0,t.lastStringValue="",t.lastAssertionIsQuantifiable=!1,t.numCapturingParens=0,t.maxBackReference=0,t.groupNames.length=0,t.backReferenceNames.length=0,this.regexp_disjunction(t),t.pos!==t.source.length&&(t.eat(41)&&t.raise("Unmatched ')'"),(t.eat(93)||t.eat(125))&&t.raise("Lone quantifier brackets")),t.maxBackReference>t.numCapturingParens&&t.raise("Invalid escape");for(var e=0,i=t.backReferenceNames;e=9&&(i=t.eat(60)),t.eat(61)||t.eat(33))return this.regexp_disjunction(t),t.eat(41)||t.raise("Unterminated group"),t.lastAssertionIsQuantifiable=!i,!0}return t.pos=e,!1},kt.regexp_eatQuantifier=function(t,e){return void 0===e&&(e=!1),!!this.regexp_eatQuantifierPrefix(t,e)&&(t.eat(63),!0)},kt.regexp_eatQuantifierPrefix=function(t,e){return t.eat(42)||t.eat(43)||t.eat(63)||this.regexp_eatBracedQuantifier(t,e)},kt.regexp_eatBracedQuantifier=function(t,e){var i=t.pos;if(t.eat(123)){var r=0,s=-1;if(this.regexp_eatDecimalDigits(t)&&(r=t.lastIntValue,t.eat(44)&&this.regexp_eatDecimalDigits(t)&&(s=t.lastIntValue),t.eat(125)))return-1!==s&&s=9?this.regexp_groupSpecifier(t):63===t.current()&&t.raise("Invalid group"),this.regexp_disjunction(t),t.eat(41))return t.numCapturingParens+=1,!0;t.raise("Unterminated group")}return!1},kt.regexp_eatExtendedAtom=function(t){return t.eat(46)||this.regexp_eatReverseSolidusAtomEscape(t)||this.regexp_eatCharacterClass(t)||this.regexp_eatUncapturingGroup(t)||this.regexp_eatCapturingGroup(t)||this.regexp_eatInvalidBracedQuantifier(t)||this.regexp_eatExtendedPatternCharacter(t)},kt.regexp_eatInvalidBracedQuantifier=function(t){return this.regexp_eatBracedQuantifier(t,!0)&&t.raise("Nothing to repeat"),!1},kt.regexp_eatSyntaxCharacter=function(t){var e=t.current();return!!Et(e)&&(t.lastIntValue=e,t.advance(),!0)},kt.regexp_eatPatternCharacters=function(t){for(var e=t.pos,i=0;-1!==(i=t.current())&&!Et(i);)t.advance();return t.pos!==e},kt.regexp_eatExtendedPatternCharacter=function(t){var e=t.current();return!(-1===e||36===e||e>=40&&e<=43||46===e||63===e||91===e||94===e||124===e||(t.advance(),0))},kt.regexp_groupSpecifier=function(t){if(t.eat(63)){if(this.regexp_eatGroupName(t))return-1!==t.groupNames.indexOf(t.lastStringValue)&&t.raise("Duplicate capture group name"),void t.groupNames.push(t.lastStringValue);t.raise("Invalid group")}},kt.regexp_eatGroupName=function(t){if(t.lastStringValue="",t.eat(60)){if(this.regexp_eatRegExpIdentifierName(t)&&t.eat(62))return!0;t.raise("Invalid capture group name")}return!1},kt.regexp_eatRegExpIdentifierName=function(t){if(t.lastStringValue="",this.regexp_eatRegExpIdentifierStart(t)){for(t.lastStringValue+=wt(t.lastIntValue);this.regexp_eatRegExpIdentifierPart(t);)t.lastStringValue+=wt(t.lastIntValue);return!0}return!1},kt.regexp_eatRegExpIdentifierStart=function(t){var e=t.pos,i=t.current();return t.advance(),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t)&&(i=t.lastIntValue),function(t){return _(t,!0)||36===t||95===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},kt.regexp_eatRegExpIdentifierPart=function(t){var e=t.pos,i=t.current();return t.advance(),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t)&&(i=t.lastIntValue),function(t){return k(t,!0)||36===t||95===t||8204===t||8205===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},kt.regexp_eatAtomEscape=function(t){return!!(this.regexp_eatBackReference(t)||this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)||t.switchN&&this.regexp_eatKGroupName(t))||(t.switchU&&(99===t.current()&&t.raise("Invalid unicode escape"),t.raise("Invalid escape")),!1)},kt.regexp_eatBackReference=function(t){var e=t.pos;if(this.regexp_eatDecimalEscape(t)){var i=t.lastIntValue;if(t.switchU)return i>t.maxBackReference&&(t.maxBackReference=i),!0;if(i<=t.numCapturingParens)return!0;t.pos=e}return!1},kt.regexp_eatKGroupName=function(t){if(t.eat(107)){if(this.regexp_eatGroupName(t))return t.backReferenceNames.push(t.lastStringValue),!0;t.raise("Invalid named reference")}return!1},kt.regexp_eatCharacterEscape=function(t){return this.regexp_eatControlEscape(t)||this.regexp_eatCControlLetter(t)||this.regexp_eatZero(t)||this.regexp_eatHexEscapeSequence(t)||this.regexp_eatRegExpUnicodeEscapeSequence(t)||!t.switchU&&this.regexp_eatLegacyOctalEscapeSequence(t)||this.regexp_eatIdentityEscape(t)},kt.regexp_eatCControlLetter=function(t){var e=t.pos;if(t.eat(99)){if(this.regexp_eatControlLetter(t))return!0;t.pos=e}return!1},kt.regexp_eatZero=function(t){return 48===t.current()&&!Lt(t.lookahead())&&(t.lastIntValue=0,t.advance(),!0)},kt.regexp_eatControlEscape=function(t){var e=t.current();return 116===e?(t.lastIntValue=9,t.advance(),!0):110===e?(t.lastIntValue=10,t.advance(),!0):118===e?(t.lastIntValue=11,t.advance(),!0):102===e?(t.lastIntValue=12,t.advance(),!0):114===e&&(t.lastIntValue=13,t.advance(),!0)},kt.regexp_eatControlLetter=function(t){var e=t.current();return!!Ct(e)&&(t.lastIntValue=e%32,t.advance(),!0)},kt.regexp_eatRegExpUnicodeEscapeSequence=function(t){var e,i=t.pos;if(t.eat(117)){if(this.regexp_eatFixedHexDigits(t,4)){var r=t.lastIntValue;if(t.switchU&&r>=55296&&r<=56319){var s=t.pos;if(t.eat(92)&&t.eat(117)&&this.regexp_eatFixedHexDigits(t,4)){var n=t.lastIntValue;if(n>=56320&&n<=57343)return t.lastIntValue=1024*(r-55296)+(n-56320)+65536,!0}t.pos=s,t.lastIntValue=r}return!0}if(t.switchU&&t.eat(123)&&this.regexp_eatHexDigits(t)&&t.eat(125)&&(e=t.lastIntValue)>=0&&e<=1114111)return!0;t.switchU&&t.raise("Invalid unicode escape"),t.pos=i}return!1},kt.regexp_eatIdentityEscape=function(t){if(t.switchU)return!!this.regexp_eatSyntaxCharacter(t)||!!t.eat(47)&&(t.lastIntValue=47,!0);var e=t.current();return!(99===e||t.switchN&&107===e||(t.lastIntValue=e,t.advance(),0))},kt.regexp_eatDecimalEscape=function(t){t.lastIntValue=0;var e=t.current();if(e>=49&&e<=57){do{t.lastIntValue=10*t.lastIntValue+(e-48),t.advance()}while((e=t.current())>=48&&e<=57);return!0}return!1},kt.regexp_eatCharacterClassEscape=function(t){var e=t.current();if(function(t){return 100===t||68===t||115===t||83===t||119===t||87===t}(e))return t.lastIntValue=-1,t.advance(),!0;if(t.switchU&&this.options.ecmaVersion>=9&&(80===e||112===e)){if(t.lastIntValue=-1,t.advance(),t.eat(123)&&this.regexp_eatUnicodePropertyValueExpression(t)&&t.eat(125))return!0;t.raise("Invalid property name")}return!1},kt.regexp_eatUnicodePropertyValueExpression=function(t){var e=t.pos;if(this.regexp_eatUnicodePropertyName(t)&&t.eat(61)){var i=t.lastStringValue;if(this.regexp_eatUnicodePropertyValue(t))return this.regexp_validateUnicodePropertyNameAndValue(t,i,t.lastStringValue),!0}return t.pos=e,!!this.regexp_eatLoneUnicodePropertyNameOrValue(t)&&(this.regexp_validateUnicodePropertyNameOrValue(t,t.lastStringValue),!0)},kt.regexp_validateUnicodePropertyNameAndValue=function(t,e,i){B(t.unicodeProperties.nonBinary,e)||t.raise("Invalid property name"),t.unicodeProperties.nonBinary[e].test(i)||t.raise("Invalid property value")},kt.regexp_validateUnicodePropertyNameOrValue=function(t,e){t.unicodeProperties.binary.test(e)||t.raise("Invalid property name")},kt.regexp_eatUnicodePropertyName=function(t){var e=0;for(t.lastStringValue="";At(e=t.current());)t.lastStringValue+=wt(e),t.advance();return""!==t.lastStringValue},kt.regexp_eatUnicodePropertyValue=function(t){var e=0;for(t.lastStringValue="";It(e=t.current());)t.lastStringValue+=wt(e),t.advance();return""!==t.lastStringValue},kt.regexp_eatLoneUnicodePropertyNameOrValue=function(t){return this.regexp_eatUnicodePropertyValue(t)},kt.regexp_eatCharacterClass=function(t){if(t.eat(91)){if(t.eat(94),this.regexp_classRanges(t),t.eat(93))return!0;t.raise("Unterminated character class")}return!1},kt.regexp_classRanges=function(t){for(;this.regexp_eatClassAtom(t);){var e=t.lastIntValue;if(t.eat(45)&&this.regexp_eatClassAtom(t)){var i=t.lastIntValue;!t.switchU||-1!==e&&-1!==i||t.raise("Invalid character class"),-1!==e&&-1!==i&&e>i&&t.raise("Range out of order in character class")}}},kt.regexp_eatClassAtom=function(t){var e=t.pos;if(t.eat(92)){if(this.regexp_eatClassEscape(t))return!0;if(t.switchU){var i=t.current();(99===i||Ot(i))&&t.raise("Invalid class escape"),t.raise("Invalid escape")}t.pos=e}var r=t.current();return 93!==r&&(t.lastIntValue=r,t.advance(),!0)},kt.regexp_eatClassEscape=function(t){var e=t.pos;if(t.eat(98))return t.lastIntValue=8,!0;if(t.switchU&&t.eat(45))return t.lastIntValue=45,!0;if(!t.switchU&&t.eat(99)){if(this.regexp_eatClassControlLetter(t))return!0;t.pos=e}return this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)},kt.regexp_eatClassControlLetter=function(t){var e=t.current();return!(!Lt(e)&&95!==e||(t.lastIntValue=e%32,t.advance(),0))},kt.regexp_eatHexEscapeSequence=function(t){var e=t.pos;if(t.eat(120)){if(this.regexp_eatFixedHexDigits(t,2))return!0;t.switchU&&t.raise("Invalid escape"),t.pos=e}return!1},kt.regexp_eatDecimalDigits=function(t){var e=t.pos,i=0;for(t.lastIntValue=0;Lt(i=t.current());)t.lastIntValue=10*t.lastIntValue+(i-48),t.advance();return t.pos!==e},kt.regexp_eatHexDigits=function(t){var e=t.pos,i=0;for(t.lastIntValue=0;Pt(i=t.current());)t.lastIntValue=16*t.lastIntValue+Nt(i),t.advance();return t.pos!==e},kt.regexp_eatLegacyOctalEscapeSequence=function(t){if(this.regexp_eatOctalDigit(t)){var e=t.lastIntValue;if(this.regexp_eatOctalDigit(t)){var i=t.lastIntValue;t.lastIntValue=e<=3&&this.regexp_eatOctalDigit(t)?64*e+8*i+t.lastIntValue:8*e+i}else t.lastIntValue=e;return!0}return!1},kt.regexp_eatOctalDigit=function(t){var e=t.current();return Ot(e)?(t.lastIntValue=e-48,t.advance(),!0):(t.lastIntValue=0,!1)},kt.regexp_eatFixedHexDigits=function(t,e){var i=t.pos;t.lastIntValue=0;for(var r=0;r>10),56320+(1023&t)))}Tt.next=function(){this.options.onToken&&this.options.onToken(new jt(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},Tt.getToken=function(){return this.next(),new jt(this)},"undefined"!=typeof Symbol&&(Tt[Symbol.iterator]=function(){var t=this;return{next:function(){var e=t.getToken();return{done:e.type===L.eof,value:e}}}}),Tt.curContext=function(){return this.context[this.context.length-1]},Tt.nextToken=function(){var t=this.curContext();return t&&t.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(L.eof):t.override?t.override(this):void this.readToken(this.fullCharCodeAtPos())},Tt.readToken=function(t){return _(t,this.options.ecmaVersion>=6)||92===t?this.readWord():this.getTokenFromCode(t)},Tt.fullCharCodeAtPos=function(){var t=this.input.charCodeAt(this.pos);return t<=55295||t>=57344?t:(t<<10)+this.input.charCodeAt(this.pos+1)-56613888},Tt.skipBlockComment=function(){var t,e=this.options.onComment&&this.curPosition(),i=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(-1===r&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(N.lastIndex=i;(t=N.exec(this.input))&&t.index8&&t<14||t>=5760&&j.test(String.fromCharCode(t))))break t;++this.pos}}},Tt.finishToken=function(t,e){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var i=this.type;this.type=t,this.value=e,this.updateContext(i)},Tt.readToken_dot=function(){var t=this.input.charCodeAt(this.pos+1);if(t>=48&&t<=57)return this.readNumber(!0);var e=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===t&&46===e?(this.pos+=3,this.finishToken(L.ellipsis)):(++this.pos,this.finishToken(L.dot))},Tt.readToken_slash=function(){var t=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===t?this.finishOp(L.assign,2):this.finishOp(L.slash,1)},Tt.readToken_mult_modulo_exp=function(t){var e=this.input.charCodeAt(this.pos+1),i=1,r=42===t?L.star:L.modulo;return this.options.ecmaVersion>=7&&42===t&&42===e&&(++i,r=L.starstar,e=this.input.charCodeAt(this.pos+2)),61===e?this.finishOp(L.assign,i+1):this.finishOp(r,i)},Tt.readToken_pipe_amp=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?this.finishOp(124===t?L.logicalOR:L.logicalAND,2):61===e?this.finishOp(L.assign,2):this.finishOp(124===t?L.bitwiseOR:L.bitwiseAND,1)},Tt.readToken_caret=function(){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(L.assign,2):this.finishOp(L.bitwiseXOR,1)},Tt.readToken_plus_min=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?45!==e||this.inModule||62!==this.input.charCodeAt(this.pos+2)||0!==this.lastTokEnd&&!P.test(this.input.slice(this.lastTokEnd,this.pos))?this.finishOp(L.incDec,2):(this.skipLineComment(3),this.skipSpace(),this.nextToken()):61===e?this.finishOp(L.assign,2):this.finishOp(L.plusMin,1)},Tt.readToken_lt_gt=function(t){var e=this.input.charCodeAt(this.pos+1),i=1;return e===t?(i=62===t&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+i)?this.finishOp(L.assign,i+1):this.finishOp(L.bitShift,i)):33!==e||60!==t||this.inModule||45!==this.input.charCodeAt(this.pos+2)||45!==this.input.charCodeAt(this.pos+3)?(61===e&&(i=2),this.finishOp(L.relational,i)):(this.skipLineComment(4),this.skipSpace(),this.nextToken())},Tt.readToken_eq_excl=function(t){var e=this.input.charCodeAt(this.pos+1);return 61===e?this.finishOp(L.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===t&&62===e&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(L.arrow)):this.finishOp(61===t?L.eq:L.prefix,1)},Tt.getTokenFromCode=function(t){switch(t){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(L.parenL);case 41:return++this.pos,this.finishToken(L.parenR);case 59:return++this.pos,this.finishToken(L.semi);case 44:return++this.pos,this.finishToken(L.comma);case 91:return++this.pos,this.finishToken(L.bracketL);case 93:return++this.pos,this.finishToken(L.bracketR);case 123:return++this.pos,this.finishToken(L.braceL);case 125:return++this.pos,this.finishToken(L.braceR);case 58:return++this.pos,this.finishToken(L.colon);case 63:return++this.pos,this.finishToken(L.question);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(L.backQuote);case 48:var e=this.input.charCodeAt(this.pos+1);if(120===e||88===e)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===e||79===e)return this.readRadixNumber(8);if(98===e||66===e)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(t);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(t);case 124:case 38:return this.readToken_pipe_amp(t);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(t);case 60:case 62:return this.readToken_lt_gt(t);case 61:case 33:return this.readToken_eq_excl(t);case 126:return this.finishOp(L.prefix,1)}this.raise(this.pos,"Unexpected character '"+Rt(t)+"'")},Tt.finishOp=function(t,e){var i=this.input.slice(this.pos,this.pos+e);return this.pos+=e,this.finishToken(t,i)},Tt.readRegexp=function(){for(var t,e,i=this.pos;;){this.pos>=this.input.length&&this.raise(i,"Unterminated regular expression");var r=this.input.charAt(this.pos);if(P.test(r)&&this.raise(i,"Unterminated regular expression"),t)t=!1;else{if("["===r)e=!0;else if("]"===r&&e)e=!1;else if("/"===r&&!e)break;t="\\"===r}++this.pos}var s=this.input.slice(i,this.pos);++this.pos;var n=this.pos,a=this.readWord1();this.containsEsc&&this.unexpected(n);var o=this.regexpState||(this.regexpState=new St(this));o.reset(i,s,a),this.validateRegExpFlags(o),this.validateRegExpPattern(o);var p=null;try{p=new RegExp(s,a)}catch(t){}return this.finishToken(L.regexp,{pattern:s,flags:a,value:p})},Tt.readInt=function(t,e){for(var i=this.pos,r=0,s=0,n=null==e?1/0:e;s=97?o-97+10:o>=65?o-65+10:o>=48&&o<=57?o-48:1/0)>=t)break;++this.pos,r=r*t+a}return this.pos===i||null!=e&&this.pos-i!==e?null:r},Tt.readRadixNumber=function(t){this.pos+=2;var e=this.readInt(t);return null==e&&this.raise(this.start+2,"Expected number in radix "+t),_(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(L.num,e)},Tt.readNumber=function(t){var e=this.pos;t||null!==this.readInt(10)||this.raise(e,"Invalid number");var i=this.pos-e>=2&&48===this.input.charCodeAt(e);i&&this.strict&&this.raise(e,"Invalid number"),i&&/[89]/.test(this.input.slice(e,this.pos))&&(i=!1);var r=this.input.charCodeAt(this.pos);46!==r||i||(++this.pos,this.readInt(10),r=this.input.charCodeAt(this.pos)),69!==r&&101!==r||i||(43!==(r=this.input.charCodeAt(++this.pos))&&45!==r||++this.pos,null===this.readInt(10)&&this.raise(e,"Invalid number")),_(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var s=this.input.slice(e,this.pos),n=i?parseInt(s,8):parseFloat(s);return this.finishToken(L.num,n)},Tt.readCodePoint=function(){var t;if(123===this.input.charCodeAt(this.pos)){this.options.ecmaVersion<6&&this.unexpected();var e=++this.pos;t=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,t>1114111&&this.invalidStringToken(e,"Code point out of bounds")}else t=this.readHexChar(4);return t},Tt.readString=function(t){for(var e="",i=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var r=this.input.charCodeAt(this.pos);if(r===t)break;92===r?(e+=this.input.slice(i,this.pos),e+=this.readEscapedChar(!1),i=this.pos):(O(r,this.options.ecmaVersion>=10)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return e+=this.input.slice(i,this.pos++),this.finishToken(L.string,e)};var Vt={};Tt.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(c){if(c!==Vt)throw c;this.readInvalidTemplateToken()}this.inTemplateElement=!1},Tt.invalidStringToken=function(t,e){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw Vt;this.raise(t,e)},Tt.readTmplToken=function(){for(var t="",e=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var i=this.input.charCodeAt(this.pos);if(96===i||36===i&&123===this.input.charCodeAt(this.pos+1))return this.pos!==this.start||this.type!==L.template&&this.type!==L.invalidTemplate?(t+=this.input.slice(e,this.pos),this.finishToken(L.template,t)):36===i?(this.pos+=2,this.finishToken(L.dollarBraceL)):(++this.pos,this.finishToken(L.backQuote));if(92===i)t+=this.input.slice(e,this.pos),t+=this.readEscapedChar(!0),e=this.pos;else if(O(i)){switch(t+=this.input.slice(e,this.pos),++this.pos,i){case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:t+="\n";break;default:t+=String.fromCharCode(i)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),e=this.pos}else++this.pos}},Tt.readInvalidTemplateToken=function(){for(;this.pos=48&&e<=55){var i=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],r=parseInt(i,8);return r>255&&(i=i.slice(0,-1),r=parseInt(i,8)),this.pos+=i.length-1,e=this.input.charCodeAt(this.pos),"0"===i&&56!==e&&57!==e||!this.strict&&!t||this.invalidStringToken(this.pos-1-i.length,t?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(r)}return O(e)?"":String.fromCharCode(e)}},Tt.readHexChar=function(t){var e=this.pos,i=this.readInt(16,t);return null===i&&this.invalidStringToken(e,"Bad character escape sequence"),i},Tt.readWord1=function(){this.containsEsc=!1;for(var t="",e=!0,i=this.pos,r=this.options.ecmaVersion>=6;this.pos",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},Bt={version:"6.1.1",parse:function(t,e){return z.parse(t,e)},parseExpressionAt:function(t,e,i){return z.parseExpressionAt(t,e,i)},tokenizer:function(t,e){return z.tokenizer(t,e)},Parser:z,defaultOptions:X,Position:U,SourceLocation:q,getLineInfo:J,Node:ht,TokenType:S,tokTypes:L,keywordTypes:A,TokContext:ut,tokContexts:dt,isIdentifierChar:k,isIdentifierStart:_,Token:jt,isNewLine:O,lineBreak:P,lineBreakG:N,nonASCIIwhitespace:j},Ft=/^[\da-fA-F]+$/,Mt=/^\d+$/,Ut=Bt.tokTypes,qt=Bt.TokContext,Jt=Bt.tokContexts,Xt=Bt.TokenType,Wt=Bt.isNewLine,zt=Bt.isIdentifierStart,Ht=Bt.isIdentifierChar,Gt=new qt("...",!0,!0),$t={jsxName:new Xt("jsxName"),jsxText:new Xt("jsxText",{beforeExpr:!0}),jsxTagStart:new Xt("jsxTagStart"),jsxTagEnd:new Xt("jsxTagEnd")};function Yt(t){return t?"JSXIdentifier"===t.type?t.name:"JSXNamespacedName"===t.type?t.namespace.name+":"+t.name.name:"JSXMemberExpression"===t.type?Yt(t.object)+"."+Yt(t.property):void 0:t}$t.jsxTagStart.updateContext=function(){this.context.push(Kt),this.context.push(Gt),this.exprAllowed=!1},$t.jsxTagEnd.updateContext=function(t){var e=this.context.pop();e===Gt&&t===Ut.slash||e===Qt?(this.context.pop(),this.exprAllowed=this.curContext()===Kt):this.exprAllowed=!0};var Zt=function(t){return t=t||{},function(e){return function(t,e){return function(e){Object(a.a)(o,e);var i=h(o);function o(){return Object(r.a)(this,o),i.apply(this,arguments)}return Object(s.a)(o,[{key:"jsx_readToken",value:function(){for(var t="",e=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated JSX contents");var i=this.input.charCodeAt(this.pos);switch(i){case 60:case 123:return this.pos===this.start?60===i&&this.exprAllowed?(++this.pos,this.finishToken($t.jsxTagStart)):this.getTokenFromCode(i):(t+=this.input.slice(e,this.pos),this.finishToken($t.jsxText,t));case 38:t+=this.input.slice(e,this.pos),t+=this.jsx_readEntity(),e=this.pos;break;default:Wt(i)?(t+=this.input.slice(e,this.pos),t+=this.jsx_readNewLine(!0),e=this.pos):++this.pos}}}},{key:"jsx_readNewLine",value:function(t){var e,i=this.input.charCodeAt(this.pos);return++this.pos,13===i&&10===this.input.charCodeAt(this.pos)?(++this.pos,e=t?"\n":"\r\n"):e=String.fromCharCode(i),this.options.locations&&(++this.curLine,this.lineStart=this.pos),e}},{key:"jsx_readString",value:function(t){for(var e="",i=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var r=this.input.charCodeAt(this.pos);if(r===t)break;38===r?(e+=this.input.slice(i,this.pos),e+=this.jsx_readEntity(),i=this.pos):Wt(r)?(e+=this.input.slice(i,this.pos),e+=this.jsx_readNewLine(!1),i=this.pos):++this.pos}return e+=this.input.slice(i,this.pos++),this.finishToken(Ut.string,e)}},{key:"jsx_readEntity",value:function(){var t,e="",i=0,r=this.input[this.pos];"&"!==r&&this.raise(this.pos,"Entity must start with an ampersand");for(var s=++this.pos;this.pos")}var a=s.name?"Element":"Fragment";return i["opening"+a]=s,i["closing"+a]=n,i.children=r,this.type===Ut.relational&&"<"===this.value&&this.raise(this.start,"Adjacent JSX elements must be wrapped in an enclosing tag"),this.finishNode(i,"JSX"+a)}},{key:"jsx_parseText",value:function(t){var e=this.parseLiteral(t);return e.type="JSXText",e}},{key:"jsx_parseElement",value:function(){var t=this.start,e=this.startLoc;return this.next(),this.jsx_parseElementAt(t,e)}},{key:"parseExprAtom",value:function(t){return this.type===$t.jsxText?this.jsx_parseText(this.value):this.type===$t.jsxTagStart?this.jsx_parseElement():Object(n.a)(Object(p.a)(o.prototype),"parseExprAtom",this).call(this,t)}},{key:"readToken",value:function(t){var e=this.curContext();if(e===Kt)return this.jsx_readToken();if(e===Gt||e===Qt){if(zt(t))return this.jsx_readWord();if(62==t)return++this.pos,this.finishToken($t.jsxTagEnd);if((34===t||39===t)&&e==Gt)return this.jsx_readString(t)}return 60===t&&this.exprAllowed&&33!==this.input.charCodeAt(this.pos+1)?(++this.pos,this.finishToken($t.jsxTagStart)):Object(n.a)(Object(p.a)(o.prototype),"readToken",this).call(this,t)}},{key:"updateContext",value:function(t){if(this.type==Ut.braceL){var e=this.curContext();e==Gt?this.context.push(Jt.b_expr):e==Kt?this.context.push(Jt.b_tmpl):Object(n.a)(Object(p.a)(o.prototype),"updateContext",this).call(this,t),this.exprAllowed=!0}else{if(this.type!==Ut.slash||t!==$t.jsxTagStart)return Object(n.a)(Object(p.a)(o.prototype),"updateContext",this).call(this,t);this.context.length-=2,this.context.push(Qt),this.exprAllowed=!1}}}]),o}(e)}({allowNamespaces:!1!==t.allowNamespaces,allowNamespacedObjects:!!t.allowNamespacedObjects},e)}};Zt.tokTypes=$t;var te,ee,ie=(function(t,e){Object.defineProperty(e,"__esModule",{value:!0}),e.DynamicImportKey=void 0;var i=function(){function t(t,e){for(var i=0;i>=5)>0&&(i|=32),e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="[i]}while(t>0);return e}var he=function(t,e,i){this.start=t,this.end=e,this.original=i,this.intro="",this.outro="",this.content=i,this.storeName=!1,this.edited=!1,Object.defineProperties(this,{previous:{writable:!0,value:null},next:{writable:!0,value:null}})};he.prototype.appendLeft=function(t){this.outro+=t},he.prototype.appendRight=function(t){this.intro=this.intro+t},he.prototype.clone=function(){var t=new he(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t},he.prototype.contains=function(t){return this.start0&&(n+=";"),0!==o.length){for(var p=0,h=[],c=0,l=o;c1&&(d+=pe(u[1]-e)+pe(u[2]-i)+pe(u[3]-r),e=u[1],i=u[2],r=u[3]),5===u.length&&(d+=pe(u[4]-s),s=u[4]),h.push(d)}n+=h.join(",")}}return n}(t.mappings)};function ue(t){var e=t.split("\n"),i=e.filter((function(t){return/^\t+/.test(t)})),r=e.filter((function(t){return/^ {2,}/.test(t)}));if(0===i.length&&0===r.length)return null;if(i.length>=r.length)return"\t";var s=r.reduce((function(t,e){var i=/^ +/.exec(e)[0].length;return Math.min(i,t)}),1/0);return new Array(s+1).join(" ")}function de(t,e){var i=t.split(/[\/\\]/),r=e.split(/[\/\\]/);for(i.pop();i[0]===r[0];)i.shift(),r.shift();if(i.length)for(var s=i.length;s--;)i[s]="..";return i.concat(r).join("/")}le.prototype.toString=function(){return JSON.stringify(this)},le.prototype.toUrl=function(){return"data:application/json;charset=utf-8;base64,"+ce(this.toString())};var fe=Object.prototype.toString;function me(t){for(var e=t.split("\n"),i=[],r=0,s=0;r>1;t=0&&s.push(r),this.rawSegments.push(s)}else this.pending&&this.rawSegments.push(this.pending);this.advance(e),this.pending=null},ye.prototype.addUneditedChunk=function(t,e,i,r,s){for(var n=e.start,a=!0;n1){for(var i=0;i=t&&i<=e)throw new Error("Cannot move a selection inside itself");this._split(t),this._split(e),this._split(i);var r=this.byStart[t],s=this.byEnd[e],n=r.previous,a=s.next,o=this.byStart[i];if(!o&&s===this.lastChunk)return this;var p=o?o.previous:this.lastChunk;return n&&(n.next=a),a&&(a.previous=n),p&&(p.next=r),o&&(o.previous=s),r.previous||(this.firstChunk=s.next),s.next||(this.lastChunk=r.previous,this.lastChunk.next=null),r.previous=p,s.next=o||null,p||(this.firstChunk=r),o||(this.lastChunk=s),this},ve.prototype.overwrite=function(t,e,i,r){if("string"!=typeof i)throw new TypeError("replacement content must be a string");for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length;if(e>this.original.length)throw new Error("end is out of bounds");if(t===e)throw new Error("Cannot overwrite a zero-length range – use appendLeft or prependRight instead");this._split(t),this._split(e),!0===r&&(ge.storeName||(console.warn("The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string"),ge.storeName=!0),r={storeName:!0});var s=void 0!==r&&r.storeName,n=void 0!==r&&r.contentOnly;if(s){var a=this.original.slice(t,e);this.storedNames[a]=!0}var o=this.byStart[t],p=this.byEnd[e];if(o){if(e>o.end&&o.next!==this.byStart[o.end])throw new Error("Cannot overwrite across a split point");if(o.edit(i,s,n),o!==p){for(var h=o.next;h!==p;)h.edit("",!1),h=h.next;h.edit("",!1)}}else{var c=new he(t,e,"").edit(i,s);p.next=c,c.previous=p}return this},ve.prototype.prepend=function(t){if("string"!=typeof t)throw new TypeError("outro content must be a string");return this.intro=t+this.intro,this},ve.prototype.prependLeft=function(t,e){if("string"!=typeof e)throw new TypeError("inserted content must be a string");this._split(t);var i=this.byEnd[t];return i?i.prependLeft(e):this.intro=e+this.intro,this},ve.prototype.prependRight=function(t,e){if("string"!=typeof e)throw new TypeError("inserted content must be a string");this._split(t);var i=this.byStart[t];return i?i.prependRight(e):this.outro=e+this.outro,this},ve.prototype.remove=function(t,e){for(;t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length;if(t===e)return this;if(t<0||e>this.original.length)throw new Error("Character is out of bounds");if(t>e)throw new Error("end must be greater than start");this._split(t),this._split(e);for(var i=this.byStart[t];i;)i.intro="",i.outro="",i.edit(""),i=e>i.end?this.byStart[i.end]:null;return this},ve.prototype.lastChar=function(){if(this.outro.length)return this.outro[this.outro.length-1];var t=this.lastChunk;do{if(t.outro.length)return t.outro[t.outro.length-1];if(t.content.length)return t.content[t.content.length-1];if(t.intro.length)return t.intro[t.intro.length-1]}while(t=t.previous);return this.intro.length?this.intro[this.intro.length-1]:""},ve.prototype.lastLine=function(){var t=this.outro.lastIndexOf("\n");if(-1!==t)return this.outro.substr(t+1);var e=this.outro,i=this.lastChunk;do{if(i.outro.length>0){if(-1!==(t=i.outro.lastIndexOf("\n")))return i.outro.substr(t+1)+e;e=i.outro+e}if(i.content.length>0){if(-1!==(t=i.content.lastIndexOf("\n")))return i.content.substr(t+1)+e;e=i.content+e}if(i.intro.length>0){if(-1!==(t=i.intro.lastIndexOf("\n")))return i.intro.substr(t+1)+e;e=i.intro+e}}while(i=i.previous);return-1!==(t=this.intro.lastIndexOf("\n"))?this.intro.substr(t+1)+e:this.intro+e},ve.prototype.slice=function(t,e){for(void 0===t&&(t=0),void 0===e&&(e=this.original.length);t<0;)t+=this.original.length;for(;e<0;)e+=this.original.length;for(var i="",r=this.firstChunk;r&&(r.start>t||r.end<=t);){if(r.start=e)return i;r=r.next}if(r&&r.edited&&r.start!==t)throw new Error("Cannot use replaced character "+t+" as slice start anchor.");for(var s=r;r;){!r.intro||s===r&&r.start!==t||(i+=r.intro);var n=r.start=e;if(n&&r.edited&&r.end!==e)throw new Error("Cannot use replaced character "+e+" as slice end anchor.");if(i+=r.content.slice(s===r?t-r.start:0,n?r.content.length+e-r.end:r.content.length),!r.outro||n&&r.end!==e||(i+=r.outro),n)break;r=r.next}return i},ve.prototype.snip=function(t,e){var i=this.clone();return i.remove(0,t),i.remove(e,i.original.length),i},ve.prototype._split=function(t){if(!this.byStart[t]&&!this.byEnd[t])for(var e=this.lastSearchedChunk,i=t>e.end;e;){if(e.contains(t))return this._splitChunk(e,t);e=i?this.byStart[e.end]:this.byEnd[e.start]}},ve.prototype._splitChunk=function(t,e){if(t.edited&&t.content.length){var i=me(this.original)(e);throw new Error("Cannot split a chunk that has already been edited ("+i.line+":"+i.column+' – "'+t.original+'")')}var r=t.split(e);return this.byEnd[e]=t,this.byStart[e]=r,this.byEnd[r.end]=r,t===this.lastChunk&&(this.lastChunk=r),this.lastSearchedChunk=t,!0},ve.prototype.toString=function(){for(var t=this.intro,e=this.firstChunk;e;)t+=e.toString(),e=e.next;return t+this.outro},ve.prototype.isEmpty=function(){var t=this.firstChunk;do{if(t.intro.length&&t.intro.trim()||t.content.length&&t.content.trim()||t.outro.length&&t.outro.trim())return!1}while(t=t.next);return!0},ve.prototype.length=function(){var t=this.firstChunk,e=0;do{e+=t.intro.length+t.content.length+t.outro.length}while(t=t.next);return e},ve.prototype.trimLines=function(){return this.trim("[\\r\\n]")},ve.prototype.trim=function(t){return this.trimStart(t).trimEnd(t)},ve.prototype.trimEndAborted=function(t){var e=new RegExp((t||"\\s")+"+$");if(this.outro=this.outro.replace(e,""),this.outro.length)return!0;var i=this.lastChunk;do{var r=i.end,s=i.trimEnd(e);if(i.end!==r&&(this.lastChunk===i&&(this.lastChunk=i.next),this.byEnd[i.end]=i,this.byStart[i.next.start]=i.next,this.byEnd[i.next.end]=i.next),s)return!0;i=i.previous}while(i);return!1},ve.prototype.trimEnd=function(t){return this.trimEndAborted(t),this},ve.prototype.trimStartAborted=function(t){var e=new RegExp("^"+(t||"\\s")+"+");if(this.intro=this.intro.replace(e,""),this.intro.length)return!0;var i=this.firstChunk;do{var r=i.end,s=i.trimStart(e);if(i.end!==r&&(i===this.lastChunk&&(this.lastChunk=i.next),this.byEnd[i.end]=i,this.byStart[i.next.start]=i.next,this.byEnd[i.next.end]=i.next),s)return!0;i=i.next}while(i);return!1},ve.prototype.trimStart=function(t){return this.trimStartAborted(t),this};var be=function(){};function _e(t){var e=[];return ke[t.type](e,t),e}be.prototype.ancestor=function(t){for(var e=this;t--;)if(!(e=e.parent))return null;return e},be.prototype.contains=function(t){for(;t;){if(t===this)return!0;t=t.parent}return!1},be.prototype.findLexicalBoundary=function(){return this.parent.findLexicalBoundary()},be.prototype.findNearest=function(t){return"string"==typeof t&&(t=new RegExp("^"+t+"$")),t.test(this.type)?this:this.parent.findNearest(t)},be.prototype.unparenthesizedParent=function(){for(var t=this.parent;t&&"ParenthesizedExpression"===t.type;)t=t.parent;return t},be.prototype.unparenthesize=function(){for(var t=this;"ParenthesizedExpression"===t.type;)t=t.expression;return t},be.prototype.findScope=function(t){return this.parent.findScope(t)},be.prototype.getIndentation=function(){return this.parent.getIndentation()},be.prototype.initialise=function(t){for(var e=0,i=this.keys;ee)return{line:i+1,column:e-n,char:i};n=a}throw new Error("Could not determine location of character")}(r,i.start);this.message=e+" ("+s.line+":"+s.column+")",this.stack=(new t).stack.replace(new RegExp(".+new "+this.name+".+\\n","m"),""),this.loc=s,this.snippet=Ce(r,s,i.end-i.start)}}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.toString=function(){return this.name+": "+this.message+"\n"+this.snippet},e.missingTransform=function(t,i,r,s){throw void 0===s&&(s=null),new e("Transforming "+t+" is not "+(s?"fully supported":"implemented")+". Use `transforms: { "+i+": false }` to skip transformation and disable this error"+(s?", or `transforms: { "+s+": true }` if you know what you're doing":"")+".",r)},e}(Error);function Ie(t,e){for(var i=0;i1&&(c=e(n),o.push((function(e,i,o){t.prependRight(s.start,(a?"":i+"var ")+c+" = "),t.overwrite(s.start,r=s.start+1,n),t.appendLeft(r,o),t.overwrite(s.start,r=s.start+1,(a?"":i+"var ")+c+" = "+n+o),t.move(s.start,r,e)}))),Oe(t,e,i,s,c,a,o);break;case"ArrayPattern":if(t.remove(r,r=s.start),s.elements.filter(Boolean).length>1){var l=e(n);o.push((function(e,i,o){t.prependRight(s.start,(a?"":i+"var ")+l+" = "),t.overwrite(s.start,r=s.start+1,n,{contentOnly:!0}),t.appendLeft(r,o),t.move(s.start,r,e)})),s.elements.forEach((function(s,n){s&&("RestElement"===s.type?je(t,e,i,r,s.argument,l+".slice("+n+")",a,o):je(t,e,i,r,s,l+"["+n+"]",a,o),r=s.end)}))}else{var u=Ie(s.elements,Boolean),d=s.elements[u];"RestElement"===d.type?je(t,e,i,r,d.argument,n+".slice("+u+")",a,o):je(t,e,i,r,d,n+"["+u+"]",a,o),r=d.end}t.remove(r,s.end);break;default:throw new Error("Unexpected node type in destructuring ("+s.type+")")}}var Te=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.createScope=function(){var t=this;this.parentIsFunction=/Function/.test(this.parent.type),this.isFunctionBlock=this.parentIsFunction||"Root"===this.parent.type,this.scope=new we({block:!this.isFunctionBlock,parent:this.parent.findScope(!1),declare:function(e){return t.createdDeclarations.push(e)}}),this.parentIsFunction&&this.parent.params.forEach((function(e){t.scope.addDeclaration(e,"param")}))},e.prototype.initialise=function(t){this.thisAlias=null,this.argumentsAlias=null,this.defaultParameters=[],this.createdDeclarations=[],this.scope||this.createScope(),this.body.forEach((function(e){return e.initialise(t)})),this.scope.consolidate()},e.prototype.findLexicalBoundary=function(){return"Program"===this.type||/^Function/.test(this.parent.type)?this:this.parent.findLexicalBoundary()},e.prototype.findScope=function(t){return t&&!this.isFunctionBlock?this.parent.findScope(t):this.scope},e.prototype.getArgumentsAlias=function(){return this.argumentsAlias||(this.argumentsAlias=this.scope.createIdentifier("arguments")),this.argumentsAlias},e.prototype.getArgumentsArrayAlias=function(){return this.argumentsArrayAlias||(this.argumentsArrayAlias=this.scope.createIdentifier("argsArray")),this.argumentsArrayAlias},e.prototype.getThisAlias=function(){return this.thisAlias||(this.thisAlias=this.scope.createIdentifier("this")),this.thisAlias},e.prototype.getIndentation=function(){if(void 0===this.indentation){for(var t=this.program.magicString.original,e=this.synthetic||!this.body.length,i=e?this.start:this.body[0].start;i&&"\n"!==t[i];)i-=1;for(this.indentation="";;){var r=t[i+=1];if(" "!==r&&"\t"!==r)break;this.indentation+=r}for(var s=this.program.magicString.getIndentString(),n=this.parent;n;)"constructor"!==n.kind||n.parent.parent.superClass||(this.indentation=this.indentation.replace(s,"")),n=n.parent;e&&(this.indentation+=s)}return this.indentation},e.prototype.transpile=function(e,i){var r,s,n=this,a=this.getIndentation(),o=[];if(this.argumentsAlias&&o.push((function(t,i,r){e.appendLeft(t,i+"var "+n.argumentsAlias+" = arguments"+r)})),this.thisAlias&&o.push((function(t,i,r){e.appendLeft(t,i+"var "+n.thisAlias+" = this"+r)})),this.argumentsArrayAlias&&o.push((function(t,i,r){var s=n.scope.createIdentifier("i");e.appendLeft(t,i+"var "+s+" = arguments.length, "+n.argumentsArrayAlias+" = Array("+s+");\n"+a+"while ( "+s+"-- ) "+n.argumentsArrayAlias+"["+s+"] = arguments["+s+"]"+r)})),/Function/.test(this.parent.type)?this.transpileParameters(this.parent.params,e,i,a,o):"CatchClause"===this.parent.type&&this.transpileParameters([this.parent.param],e,i,a,o),i.letConst&&this.isFunctionBlock&&this.transpileBlockScopedIdentifiers(e),t.prototype.transpile.call(this,e,i),this.createdDeclarations.length&&o.push((function(t,i,r){var s=i+"var "+n.createdDeclarations.join(", ")+r;e.appendLeft(t,s)})),this.synthetic)if("ArrowFunctionExpression"===this.parent.type){var p=this.body[0];o.length?(e.appendLeft(this.start,"{").prependRight(this.end,this.parent.getIndentation()+"}"),e.prependRight(p.start,"\n"+a+"return "),e.appendLeft(p.end,";\n")):i.arrow&&(e.prependRight(p.start,"{ return "),e.appendLeft(p.end,"; }"))}else o.length&&e.prependRight(this.start,"{").appendLeft(this.end,"}");r=(s=this.body[0])&&"ExpressionStatement"===s.type&&"Literal"===s.expression.type&&"use strict"===s.expression.value?this.body[0].end:this.synthetic||"Root"===this.parent.type?this.start:this.start+1;var h="\n"+a,c=";";o.forEach((function(t,e){e===o.length-1&&(c=";\n"),t(r,h,c)}))},e.prototype.transpileParameters=function(t,e,i,r,s){var n=this;t.forEach((function(a){if("AssignmentPattern"===a.type&&"Identifier"===a.left.type)i.defaultParameter&&s.push((function(t,i,r){e.prependRight(a.left.end,i+"if ( "+a.left.name+" === void 0 ) "+a.left.name).move(a.left.end,a.right.end,t).appendLeft(a.right.end,r)}));else if("RestElement"===a.type)i.spreadRest&&s.push((function(i,s,o){var p=t[t.length-2];if(p)e.remove(p?p.end:a.start,a.end);else{for(var h=a.start,c=a.end;/\s/.test(e.original[h-1]);)h-=1;for(;/\s/.test(e.original[c]);)c+=1;e.remove(h,c)}var l=a.argument.name,u=n.scope.createIdentifier("len"),d=t.length-1;e.prependRight(i,d?s+"var "+l+" = [], "+u+" = arguments.length - "+d+";\n"+r+"while ( "+u+"-- > 0 ) "+l+"[ "+u+" ] = arguments[ "+u+" + "+d+" ]"+o:s+"var "+l+" = [], "+u+" = arguments.length;\n"+r+"while ( "+u+"-- ) "+l+"[ "+u+" ] = arguments[ "+u+" ]"+o)}));else if("Identifier"!==a.type&&i.parameterDestructuring){var o=n.scope.createIdentifier("ref");Pe(e,(function(t){return n.scope.createIdentifier(t)}),(function(t){return n.scope.resolveName(t.name)}),a,o,!1,s),e.prependRight(a.start,o)}}))},e.prototype.transpileBlockScopedIdentifiers=function(t){var e=this;Object.keys(this.scope.blockScopedDeclarations).forEach((function(i){for(var r=0,s=e.scope.blockScopedDeclarations[i];rthis.start?e.overwrite(this.start,o,h):e.prependRight(this.start,h)}else t.prototype.transpile.call(this,e,i);i.trailingFunctionCommas&&this.params.length&&!n&&Me(e,this.params[this.params.length-1].end)},e.prototype.needsArguments=function(t){return t.spreadRest&&this.params.filter((function(t){return"RestElement"===t.type})).length>0},e}(be);function qe(t,e){var i=e.findDeclaration(t.name);if(i&&"const"===i.kind)throw new Ae(t.name+" is read-only",t)}var Je=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if("Identifier"===this.left.type){var i=this.findScope(!1).findDeclaration(this.left.name),r=i&&i.node.ancestor(3);r&&"ForStatement"===r.type&&r.body.contains(this)&&(r.reassigned[this.left.name]=!0)}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){"Identifier"===this.left.type&&qe(this.left,this.findScope(!1)),"**="===this.operator&&i.exponentiation?this.transpileExponentiation(e,i):/Pattern/.test(this.left.type)&&i.destructuring&&this.transpileDestructuring(e),t.prototype.transpile.call(this,e,i)},e.prototype.transpileDestructuring=function(t){var e=this,i=this.findScope(!0),r=this.findScope(!1),s=i.createDeclaration("assign");t.appendRight(this.left.end,"("+s),t.appendLeft(this.right.end,", ");var n=[];Pe(t,(function(t){return i.createDeclaration(t)}),(function(t){var e=r.resolveName(t.name);return qe(t,r),e}),this.left,s,!0,n);var a=", ";n.forEach((function(t,i){i===n.length-1&&(a=""),t(e.end,"",a)})),"ExpressionStatement"===this.unparenthesizedParent().type?t.prependRight(this.end,")"):t.appendRight(this.end,", "+s+")")},e.prototype.transpileExponentiation=function(t){for(var e,i=this.findScope(!1),r=this.left.end;"*"!==t.original[r];)r+=1;t.remove(r,r+2);var s=this.left.unparenthesize();if("Identifier"===s.type)e=i.resolveName(s.name);else if("MemberExpression"===s.type){var n,a,o=!1,p=!1,h=this.findNearest(/(?:Statement|Declaration)$/),c=h.getIndentation();"Identifier"===s.property.type?a=s.computed?i.resolveName(s.property.name):s.property.name:(a=i.createDeclaration("property"),p=!0),"Identifier"===s.object.type?n=i.resolveName(s.object.name):(n=i.createDeclaration("object"),o=!0),s.start===h.start?o&&p?(t.prependRight(h.start,n+" = "),t.overwrite(s.object.end,s.property.start,";\n"+c+a+" = "),t.overwrite(s.property.end,s.end,";\n"+c+n+"["+a+"]")):o?(t.prependRight(h.start,n+" = "),t.appendLeft(s.object.end,";\n"+c),t.appendLeft(s.object.end,n)):p&&(t.prependRight(s.property.start,a+" = "),t.appendLeft(s.property.end,";\n"+c),t.move(s.property.start,s.property.end,this.start),t.appendLeft(s.object.end,"["+a+"]"),t.remove(s.object.end,s.property.start),t.remove(s.property.end,s.end)):(o&&p?(t.prependRight(s.start,"( "+n+" = "),t.overwrite(s.object.end,s.property.start,", "+a+" = "),t.overwrite(s.property.end,s.end,", "+n+"["+a+"]")):o?(t.prependRight(s.start,"( "+n+" = "),t.appendLeft(s.object.end,", "+n)):p&&(t.prependRight(s.property.start,"( "+a+" = "),t.appendLeft(s.property.end,", "),t.move(s.property.start,s.property.end,s.start),t.overwrite(s.object.end,s.property.start,"["+a+"]"),t.remove(s.property.end,s.end)),p&&t.appendLeft(this.end," )")),e=n+(s.computed||p?"["+a+"]":"."+a)}t.prependRight(this.right.start,"Math.pow( "+e+", "),t.appendLeft(this.right.end," )")},e}(be),Xe=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.asyncAwait&&Ae.missingTransform("await","asyncAwait",this),t.prototype.initialise.call(this,e)},e}(be),We=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){"**"===this.operator&&i.exponentiation&&(e.prependRight(this.start,"Math.pow( "),e.overwrite(this.left.end,this.right.start,", "),e.appendLeft(this.end," )")),t.prototype.transpile.call(this,e,i)},e}(be),ze=/(?:For(?:In|Of)?|While)Statement/,He=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(){var t=this.findNearest(ze),e=this.findNearest("SwitchCase");t&&(!e||t.depth>e.depth)&&(t.canBreak=!0,this.loop=t)},e.prototype.transpile=function(t){if(this.loop&&this.loop.shouldRewriteAsFunction){if(this.label)throw new Ae("Labels are not currently supported in a loop with locally-scoped variables",this);t.overwrite(this.start,this.start+5,"return 'break'")}},e}(be),Ge=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if(e.spreadRest&&this.arguments.length>1)for(var i=this.findLexicalBoundary(),r=this.arguments.length;r--;){var s=this.arguments[r];"SpreadElement"===s.type&&Re(s.argument)&&(this.argumentsArrayAlias=i.getArgumentsArrayAlias())}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){if(i.spreadRest&&this.arguments.length&&Ve(e,this,this.arguments),i.spreadRest&&this.arguments.length){var r,s=!1,n=this.arguments[0];if(1===this.arguments.length?"SpreadElement"===n.type&&(e.remove(n.start,n.argument.start),s=!0):s=Be(e,this.arguments,n.start,this.argumentsArrayAlias),s){var a=null;if("Super"===this.callee.type?a=this.callee:"MemberExpression"===this.callee.type&&"Super"===this.callee.object.type&&(a=this.callee.object),a||"MemberExpression"!==this.callee.type)r="void 0";else if("Identifier"===this.callee.object.type)r=this.callee.object.name;else{r=this.findScope(!0).createDeclaration("ref");var o=this.callee.object;e.prependRight(o.start,"("+r+" = "),e.appendLeft(o.end,")")}e.appendLeft(this.callee.end,".apply"),a?(a.noCall=!0,this.arguments.length>1&&("SpreadElement"===n.type?De(n.argument)&&e.prependRight(n.start,"( "):e.prependRight(n.start,"[ "),e.appendLeft(this.arguments[this.arguments.length-1].end," )"))):1===this.arguments.length?e.prependRight(n.start,r+", "):("SpreadElement"===n.type?De(n.argument)?e.appendLeft(n.start,r+", ( "):e.appendLeft(n.start,r+", "):e.appendLeft(n.start,r+", [ "),e.appendLeft(this.arguments[this.arguments.length-1].end," )"))}}i.trailingFunctionCommas&&this.arguments.length&&Me(e,this.arguments[this.arguments.length-1].end),t.prototype.transpile.call(this,e,i)},e}(be),Qe=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i,r,s){var n=this;if(i.classes){var a=this.parent.name,o=e.getIndentString(),p=this.getIndentation()+(r?o:""),h=p+o,c=Ie(this.body,(function(t){return"constructor"===t.kind})),l=this.body[c],u="",d="";if(this.body.length?(e.remove(this.start,this.body[0].start),e.remove(this.body[this.body.length-1].end,this.end)):e.remove(this.start,this.end),l){l.value.body.isConstructorBody=!0;var f=this.body[c+1];c>0&&(e.remove(this.body[c-1].end,l.start),e.move(l.start,f?f.start:this.end-1,this.body[0].start)),r||e.appendLeft(l.end,";")}var m=[];this.body.forEach((function(t){if("FieldDefinition"===t.type&&(m.push(t.computed?"this"+e.slice(t.start,t.end)+";":"this."+e.slice(t.start,t.end)+";"),e.remove(t.start,t.end),""!==e.byStart[t.end].content)){for(var i=0;i0&&e.remove(t.end,t.end+i)}}));var y=!1!==this.program.options.namedFunctionExpressions,g=y||this.parent.superClass||"ClassDeclaration"!==this.parent.type;if(this.parent.superClass){var v="if ( "+s+" ) "+a+".__proto__ = "+s+";\n"+p+a+".prototype = Object.create( "+s+" && "+s+".prototype );\n"+p+a+".prototype.constructor = "+a+";";u+=l?"\n\n"+p+v:(v="function "+a+" () {"+(m.length?"\n"+h+m.join("\n"+h)+"\n"+h:"")+(s?"\n"+h+s+".apply(this, arguments);\n"+p+"}":"}")+(r?"":";")+(this.body.length?"\n\n"+p:"")+v)+"\n\n"+p}else if(!l){var x="function "+(g?a+" ":"")+"() {"+(m.length?"\n"+h+m.join("\n"+h)+"\n"+p:"")+"}";"ClassDeclaration"===this.parent.type&&(x+=";"),this.body.length&&(x+="\n\n"+p),u+=x}l&&m.length&&e.appendLeft(l.value.body.start+1,"\n"+h+m.join("\n"+h));var b,_,k=this.findScope(!1),S=[],w=[];if(this.body.forEach((function(t,r){if("get"!==t.kind&&"set"!==t.kind||!i.getterSetter||Ae.missingTransform("getters and setters","getterSetter",t),"FieldDefinition"!==t.type)if("constructor"!==t.kind){t.static&&e.remove(t.start,t.start+(" "==e.original[t.start+6]?7:6));var s,o="method"!==t.kind,h=t.key.name;(Se[h]||t.value.body.scope.references[h])&&(h=k.createIdentifier(h));var l=!1;if(t.computed||"Literal"!==t.key.type||(l=!0,t.computed=!0),o){if(t.computed)throw new Error("Computed accessor properties are not currently supported");e.remove(t.start,t.key.start),t.static?(~w.indexOf(t.key.name)||w.push(t.key.name),_||(_=k.createIdentifier("staticAccessors")),s=""+_):(~S.indexOf(t.key.name)||S.push(t.key.name),b||(b=k.createIdentifier("prototypeAccessors")),s=""+b)}else s=t.static?""+a:a+".prototype";t.computed||(s+="."),(c>0&&r===c+1||0===r&&c===n.body.length-1)&&(s="\n\n"+p+s);var u=t.key.end;if(t.computed)if(l)e.prependRight(t.key.start,"["),e.appendLeft(t.key.end,"]");else{for(;"]"!==e.original[u];)u+=1;u+=1}var d=(o?"."+t.kind:"")+" = "+(t.value.async?"async ":"")+"function"+(t.value.generator?"* ":" ")+(t.computed||o||!y?"":h+" ");e.remove(u,t.value.start),e.prependRight(t.value.start,d),e.appendLeft(t.end,";"),t.value.generator&&e.remove(t.start,t.key.start);var f=t.key.start;if(t.computed&&!l)for(;"["!=e.original[f];)--f;t.startthis.depth){this.shouldRewriteAsFunction=!0;for(var o=0,p=this.thisRefs;oe.depth&&(this.alias=e.getArgumentsAlias()),r&&r.body.contains(this)&&r.depth>e.depth&&(this.alias=e.getArgumentsAlias())}this.findScope(!1).addReference(this)}},e.prototype.transpile=function(t){this.alias&&t.overwrite(this.start,this.end,this.alias,{storeName:!0,contentOnly:!0})},e}(be),pi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){("BlockStatement"!==this.consequent.type||"BlockStatement"===this.consequent.type&&this.consequent.synthetic)&&(e.appendLeft(this.consequent.start,"{ "),e.prependRight(this.consequent.end," }")),this.alternate&&"IfStatement"!==this.alternate.type&&("BlockStatement"!==this.alternate.type||"BlockStatement"===this.alternate.type&&this.alternate.synthetic)&&(e.appendLeft(this.alternate.start,"{ "),e.prependRight(this.alternate.end," }")),t.prototype.transpile.call(this,e,i)},e}(be),hi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.moduleImport&&Ae.missingTransform("dynamic import expressions","moduleImport",this),t.prototype.initialise.call(this,e)},e}(be),ci=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.moduleImport&&Ae.missingTransform("import","moduleImport",this),t.prototype.initialise.call(this,e)},e}(be),li=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){this.findScope(!0).addDeclaration(this.local,"import"),t.prototype.initialise.call(this,e)},e}(be),ui=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){this.findScope(!0).addDeclaration(this.local,"import"),t.prototype.initialise.call(this,e)},e}(be),di=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){var r,s=this.name;e.overwrite(s.start,this.value?this.value.start:this.name.end,(/-/.test(r=s.name)?"'"+r+"'":r)+": "+(this.value?"":"true")),t.prototype.transpile.call(this,e,i)},e}(be),fi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(t){var e,i=!0,r=this.parent.children[this.parent.children.length-1];(r&&"JSXText"===(e=r).type&&!/\S/.test(e.value)&&/\n/.test(e.value)||this.parent.openingElement.attributes.length)&&(i=!1),t.overwrite(this.start,this.end,i?" )":")")},e}(be),mi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(t){var e,i=!0,r=this.parent.children[this.parent.children.length-1];r&&"JSXText"===(e=r).type&&!/\S/.test(e.value)&&/\n/.test(e.value)&&(i=!1),t.overwrite(this.start,this.end,i?" )":")")},e}(be);function yi(t,e){return t=t.replace(/\u00a0/g," "),e&&/\n/.test(t)&&(t=t.replace(/\s+$/,"")),t=t.replace(/^\n\r?\s+/,"").replace(/\s*\n\r?\s*/gm," "),JSON.stringify(t)}var gi=function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){t.prototype.transpile.call(this,e,i);var r=this.children.filter((function(t){return"JSXText"!==t.type||/\S/.test(t.raw)||!/\n/.test(t.raw)}));if(r.length){var s,n=(this.openingElement||this.openingFragment).end;for(s=0;s0&&(c.start===n?e.prependRight(n,", "):e.overwrite(n,c.start,", ")),h&&"JSXSpreadAttribute"!==c.type){var l=this.attributes[a-1],u=this.attributes[a+1];l&&"JSXSpreadAttribute"!==l.type||e.prependRight(c.start,"{ "),u&&"JSXSpreadAttribute"!==u.type||e.appendLeft(c.end," }")}n=c.end}if(h)if(1===s)p=r?"',":",";else{if(!this.program.options.objectAssign)throw new Ae("Mixed JSX attributes ending in spread requires specified objectAssign option with 'Object.assign' or polyfill helper.",this);p=r?"', "+this.program.options.objectAssign+"({},":", "+this.program.options.objectAssign+"({},",o=")"}else p=r?"', {":", {",o=" }";e.prependRight(this.name.end,p),o&&e.appendLeft(this.attributes[s-1].end,o)}else e.appendLeft(this.name.end,r?"', null":", null"),n=this.name.end;this.selfClosing?e.overwrite(n,this.end,this.attributes.length?")":" )"):e.remove(n,this.end)},e}(be),JSXOpeningFragment:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(t){t.overwrite(this.start,this.end,this.program.jsx+"( React.Fragment, null")},e}(be),JSXSpreadAttribute:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){e.remove(this.start,this.argument.start),e.remove(this.argument.end,this.end),t.prototype.transpile.call(this,e,i)},e}(be),Literal:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(){"string"==typeof this.value&&this.program.indentExclusionElements.push(this)},e.prototype.transpile=function(t,e){e.numericLiteral&&this.raw.match(/^0[bo]/i)&&t.overwrite(this.start,this.end,String(this.value),{storeName:!0,contentOnly:!0}),"string"==typeof this.value&&this.value.match(vi)&&t.overwrite(this.start,this.end,this.raw.replace(vi,(function(t){return"\u2028"==t?"\\u2028":"\\u2029"})),{contentOnly:!0})},e}(be),MemberExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){i.reservedProperties&&Se[this.property.name]&&(e.overwrite(this.object.end,this.property.start,"['"),e.appendLeft(this.property.end,"']")),t.prototype.transpile.call(this,e,i)},e}(be),NewExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if(e.spreadRest&&this.arguments.length)for(var i=this.findLexicalBoundary(),r=this.arguments.length;r--;){var s=this.arguments[r];if("SpreadElement"===s.type&&Re(s.argument)){this.argumentsArrayAlias=i.getArgumentsArrayAlias();break}}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){if(t.prototype.transpile.call(this,e,i),i.spreadRest&&this.arguments.length&&Ve(e,this,this.arguments),i.spreadRest&&this.arguments.length){var r=this.arguments[0];Be(e,this.arguments,r.start,this.argumentsArrayAlias,!0)&&(e.prependRight(this.start+"new".length," (Function.prototype.bind.apply("),e.overwrite(this.callee.end,r.start,", [ null ].concat( "),e.appendLeft(this.end," ))"))}this.arguments.length&&Me(e,this.arguments[this.arguments.length-1].end)},e}(be),ObjectExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){var r;t.prototype.transpile.call(this,e,i);for(var s=this.start+1,n=0,a=0,o=null,p=null,h=0;h0?(e.remove(c.start,l.properties[0].start),e.remove(l.properties[l.properties.length-1].end,c.end),(r=this.properties).splice.apply(r,[h,1].concat(l.properties)),h--):(e.remove(c.start,h===this.properties.length-1?c.end:this.properties[h+1].start),this.properties.splice(h,1),h--):(n+=1,null===o&&(o=h))}else c.computed&&i.computedProperty&&(a+=1,null===p&&(p=h))}if(!n||i.objectRestSpread||a&&i.computedProperty){if(n){if(!this.program.options.objectAssign)throw new Ae("Object spread operator requires specified objectAssign option with 'Object.assign' or polyfill helper.",this);for(var u=this.properties.length;u--;){var d=this.properties[u];if("Property"===d.type&&!a){var f=this.properties[u-1],m=this.properties[u+1];f&&"Property"===f.type||e.prependRight(d.start,"{"),m&&"Property"===m.type||e.appendLeft(d.end,"}")}"SpreadElement"===d.type&&(e.remove(d.start,d.argument.start),e.remove(d.argument.end,d.end))}s=this.properties[0].start,a?"SpreadElement"===this.properties[0].type?(e.overwrite(this.start,s,this.program.options.objectAssign+"({}, "),e.remove(this.end-1,this.end),e.appendRight(this.end,")")):(e.prependLeft(this.start,this.program.options.objectAssign+"("),e.appendRight(this.end,")")):(e.overwrite(this.start,s,this.program.options.objectAssign+"({}, "),e.overwrite(this.properties[this.properties.length-1].end,this.end,")"))}}else n=0,o=null;if(a&&i.computedProperty){var y,g,v=this.getIndentation();"VariableDeclarator"===this.parent.type&&1===this.parent.parent.declarations.length&&"Identifier"===this.parent.id.type?(y=!0,g=this.parent.id.alias||this.parent.id.name):("AssignmentExpression"===this.parent.type&&"ExpressionStatement"===this.parent.parent.type&&"Identifier"===this.parent.left.type||"AssignmentPattern"===this.parent.type&&"Identifier"===this.parent.left.type)&&(y=!0,g=this.parent.left.alias||this.parent.left.name),n&&(y=!1),g=this.findScope(!1).resolveName(g);var x=s,b=this.end;y||(null===o||pL&&e.remove(L,C.value.start),e.prependLeft(L," = ")):e.overwrite(C.start,C.key.end+1,"["+e.slice(C.start,C.key.end)+"] = "),!C.method||!C.computed&&i.conciseMethodProperty||(C.value.generator&&e.remove(C.start,C.key.start),e.prependRight(C.value.start,"function"+(C.value.generator?"*":"")+" "))}else"SpreadElement"===C.type?g&&E>0&&(_||(_=this.properties[E-1]),e.appendLeft(_.end,", "+g+" )"),_=null,g=null):(!w&&n&&(e.prependRight(C.start,"{"),e.appendLeft(C.end,"}")),S=!0);if(w&&("SpreadElement"===C.type||C.computed)){var P=S?this.properties[this.properties.length-1].end:this.end-1;","==e.original[P]&&++P;var N=e.slice(P,b);e.prependLeft(A,N),e.remove(P,b),w=!1}var O=C.end;if(Ethis.nearestFunction.depth)&&(this.loop.canReturn=!0,this.shouldWrap=!0),this.argument&&this.argument.initialise(t)},e.prototype.transpile=function(t,e){var i=this.shouldWrap&&this.loop&&this.loop.shouldRewriteAsFunction;this.argument?(i&&t.prependRight(this.argument.start,"{ v: "),this.argument.transpile(t,e),i&&t.appendLeft(this.argument.end," }")):i&&t.appendLeft(this.start+6," {}")},e}(be),Super:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(t){if(t.classes){if(this.method=this.findNearest("MethodDefinition"),!this.method)throw new Ae("use of super outside class method",this);var e=this.findNearest("ClassBody").parent;if(this.superClassName=e.superClass&&(e.superClass.name||"superclass"),!this.superClassName)throw new Ae("super used in base class",this);if(this.isCalled="CallExpression"===this.parent.type&&this===this.parent.callee,"constructor"!==this.method.kind&&this.isCalled)throw new Ae("super() not allowed outside class constructor",this);if(this.isMember="MemberExpression"===this.parent.type,!this.isCalled&&!this.isMember)throw new Ae("Unexpected use of `super` (expected `super(...)` or `super.*`)",this)}if(t.arrow){var i=this.findLexicalBoundary(),r=this.findNearest("ArrowFunctionExpression"),s=this.findNearest(ze);r&&r.depth>i.depth&&(this.thisAlias=i.getThisAlias()),s&&s.body.contains(this)&&s.depth>i.depth&&(this.thisAlias=i.getThisAlias())}},e.prototype.transpile=function(t,e){if(e.classes){t.overwrite(this.start,this.end,this.isCalled||this.method.static?this.superClassName:this.superClassName+".prototype",{storeName:!0,contentOnly:!0});var i=this.isCalled?this.parent:this.parent.parent;if(i&&"CallExpression"===i.type){this.noCall||t.appendLeft(i.callee.end,".call");var r=this.thisAlias||"this";i.arguments.length?t.appendLeft(i.arguments[0].start,r+", "):t.appendLeft(i.end-1,""+r)}}},e}(be),TaggedTemplateExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){e.templateString&&!e.dangerousTaggedTemplateString&&Ae.missingTransform("tagged template strings","templateString",this,"dangerousTaggedTemplateString"),t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){if(i.templateString&&i.dangerousTaggedTemplateString){var r=this.quasi.expressions.concat(this.quasi.quasis).sort((function(t,e){return t.start-e.start})),s=this.program.body.scope,n=this.quasi.quasis.map((function(t){return JSON.stringify(t.value.cooked)})).join(", "),a=this.program.templateLiteralQuasis[n];a||(a=s.createIdentifier("templateObject"),e.prependLeft(this.program.prependAt,"var "+a+" = Object.freeze(["+n+"]);\n"),this.program.templateLiteralQuasis[n]=a),e.overwrite(this.tag.end,r[0].start,"("+a);var o=r[0].start;r.forEach((function(t){"TemplateElement"===t.type?e.remove(o,t.end):e.overwrite(o,t.start,", "),o=t.end})),e.overwrite(o,this.end,")")}t.prototype.transpile.call(this,e,i)},e}(be),TemplateElement:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(){this.program.indentExclusionElements.push(this)},e}(be),TemplateLiteral:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.transpile=function(e,i){if(t.prototype.transpile.call(this,e,i),i.templateString&&"TaggedTemplateExpression"!==this.parent.type){var r=this.expressions.concat(this.quasis).sort((function(t,e){return t.start-e.start||t.end-e.end})).filter((function(t,e){return"TemplateElement"!==t.type||!!t.value.raw||!e}));if(r.length>=3){var s=r[0];"TemplateElement"===s.type&&""===s.value.raw&&"TemplateElement"===r[2].type&&r.shift()}var n=!(1===this.quasis.length&&0===this.expressions.length||"TemplateLiteral"===this.parent.type||"AssignmentExpression"===this.parent.type||"AssignmentPattern"===this.parent.type||"VariableDeclarator"===this.parent.type||"BinaryExpression"===this.parent.type&&"+"===this.parent.operator);n&&e.appendRight(this.start,"(");var a=this.start;r.forEach((function(t,i){var r=0===i?n?"(":"":" + ";if("TemplateElement"===t.type)e.overwrite(a,t.end,r+JSON.stringify(t.value.cooked));else{var s="Identifier"!==t.type;s&&(r+="("),e.remove(a,t.start),r&&e.prependRight(t.start,r),s&&e.appendLeft(t.end,")")}a=t.end})),n&&e.appendLeft(a,")"),e.overwrite(a,this.end,"",{contentOnly:!0})}},e}(be),ThisExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(t){var e=this.findLexicalBoundary();if(t.letConst)for(var i=this.findNearest(ze);i&&i.depth>e.depth;)i.thisRefs.push(this),i=i.parent.findNearest(ze);if(t.arrow){var r=this.findNearest("ArrowFunctionExpression");r&&r.depth>e.depth&&(this.alias=e.getThisAlias())}},e.prototype.transpile=function(t){this.alias&&t.overwrite(this.start,this.end,this.alias,{storeName:!0,contentOnly:!0})},e}(be),UpdateExpression:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){if("Identifier"===this.argument.type){var i=this.findScope(!1).findDeclaration(this.argument.name),r=i&&i.node.ancestor(3);r&&"ForStatement"===r.type&&r.body.contains(this)&&(r.reassigned[this.argument.name]=!0)}t.prototype.initialise.call(this,e)},e.prototype.transpile=function(e,i){"Identifier"===this.argument.type&&qe(this.argument,this.findScope(!1)),t.prototype.transpile.call(this,e,i)},e}(be),VariableDeclaration:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(t){this.scope=this.findScope("var"===this.kind),this.declarations.forEach((function(e){return e.initialise(t)}))},e.prototype.transpile=function(t,e){var i=this,r=this.getIndentation(),s=this.kind;if(e.letConst&&"var"!==s&&t.overwrite(this.start,this.start+this.kind.length,s="var",{contentOnly:!0,storeName:!0}),e.destructuring&&"ForOfStatement"!==this.parent.type&&"ForInStatement"!==this.parent.type){var n,a=this.start;this.declarations.forEach((function(s,o){if(s.transpile(t,e),"Identifier"===s.id.type)o>0&&"Identifier"!==i.declarations[o-1].id.type&&t.overwrite(a,s.id.start,"var ");else{var p=ze.test(i.parent.type);0===o?t.remove(a,s.id.start):t.overwrite(a,s.id.start,";\n"+r);var h="Identifier"===s.init.type&&!s.init.rewritten,c=h?s.init.alias||s.init.name:s.findScope(!0).createIdentifier("ref");a=s.start;var l=[];h?t.remove(s.id.end,s.end):l.push((function(e,i,r){t.prependRight(s.id.end,"var "+c),t.appendLeft(s.init.end,""+r),t.move(s.id.end,s.end,e)}));var u=s.findScope(!1);Pe(t,(function(t){return u.createIdentifier(t)}),(function(t){return u.resolveName(t.name)}),s.id,c,p,l);var d=p?"var ":"",f=p?", ":";\n"+r;l.forEach((function(t,e){o===i.declarations.length-1&&e===l.length-1&&(f=p?"":";"),t(s.start,0===e?d:"",f)}))}a=s.end,n="Identifier"!==s.id.type})),n&&this.end>a&&t.overwrite(a,this.end,"",{contentOnly:!0})}else this.declarations.forEach((function(i){i.transpile(t,e)}))},e}(be),VariableDeclarator:function(t){function e(){t.apply(this,arguments)}return t&&(e.__proto__=t),(e.prototype=Object.create(t&&t.prototype)).constructor=e,e.prototype.initialise=function(e){var i=this.parent.kind;"let"===i&&"ForStatement"===this.parent.parent.type&&(i="for.let"),this.parent.scope.addDeclaration(this.id,i),t.prototype.initialise.call(this,e)},e.prototype.transpile=function(t,e){if(!this.init&&e.letConst&&"var"!==this.parent.kind){var i=this.findNearest(/Function|^For(In|Of)?Statement|^(?:Do)?WhileStatement/);!i||/Function/.test(i.type)||this.isLeftDeclaratorOfLoop()||t.appendLeft(this.id.end," = (void 0)")}this.id&&this.id.transpile(t,e),this.init&&this.init.transpile(t,e)},e.prototype.isLeftDeclaratorOfLoop=function(){return this.parent&&"VariableDeclaration"===this.parent.type&&this.parent.parent&&("ForInStatement"===this.parent.parent.type||"ForOfStatement"===this.parent.parent.type)&&this.parent.parent.left&&this.parent.parent.left.declarations[0]===this},e}(be),WhileStatement:ei},bi={Program:["body"],Literal:[]},_i={IfStatement:"consequent",ForStatement:"body",ForInStatement:"body",ForOfStatement:"body",WhileStatement:"body",DoWhileStatement:"body",ArrowFunctionExpression:"body"};function ki(t,e,i,r){this.type="Root",this.jsx=r.jsx||"React.createElement",this.options=r,this.source=t,this.magicString=new ve(t),this.ast=e,this.depth=0,function t(e,i){if(e)if("length"in e)for(var r=e.length;r--;)t(e[r],i);else if(!e.__wrapped){e.__wrapped=!0,bi[e.type]||(bi[e.type]=Object.keys(e).filter((function(t){return"object"==typeof e[t]})));var s=_i[e.type];if(s&&"BlockStatement"!==e[s].type){var n=e[s];e[s]={start:n.start,end:n.end,type:"BlockStatement",body:[n],synthetic:!0}}e.parent=i,e.program=i.program||i,e.depth=i.depth+1,e.keys=bi[e.type],e.indentation=void 0;for(var a=0,o=bi[e.type];a=8)||this.type!=oe){if(this.isContextual("async")){re.lastIndex=this.pos;var r=re.exec(this.input),s=this.input.charAt(this.pos+r[0].length);if(";"===s||"="===s)return e.key=this.parseIdent(!0),e.computed=!1,ne.call(this,e),this.finishNode(e,"FieldDefinition"),this.semicolon(),e}return Object(n.a)(Object(p.a)(i.prototype),"parseClassElement",this).apply(this,arguments)}return e.key=ae.call(this),e.computed=!1,"constructor"==e.key.name&&this.raise(e.start,"Classes may not have a field named constructor"),Object.prototype.hasOwnProperty.call(this._privateBoundNamesStack[this._privateBoundNamesStack.length-1],e.key.name)&&this.raise(e.start,"Duplicate private element"),this._privateBoundNamesStack[this._privateBoundNamesStack.length-1][e.key.name]=!0,delete this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length-1][e.key.name],ne.call(this,e),this.finishNode(e,"FieldDefinition"),this.semicolon(),e}},{key:"parseClassMethod",value:function(t,e,r,s){return e||r||"method"!=t.kind||t.static||this.options.ecmaVersion<8||this.type==se.parenL?Object(n.a)(Object(p.a)(i.prototype),"parseClassMethod",this).apply(this,arguments):(ne.call(this,t),delete t.kind,delete t.static,t=this.finishNode(t,"FieldDefinition"),this.semicolon(),t)}},{key:"parseSubscripts",value:function(t,e,r,s){for(var a;;){if(!(a=this.eat(se.bracketL))&&!this.eat(se.dot))return Object(n.a)(Object(p.a)(i.prototype),"parseSubscripts",this).call(this,t,e,r,s);var o=this.startNodeAt(e,r);o.object=t,a?o.property=this.parseExpression():this.type==oe?(o.property=ae.call(this),this._privateBoundNamesStack.length&&this._privateBoundNamesStack[this._privateBoundNamesStack.length-1][o.property.name]||(this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length-1][o.property.name]=o.property.start)):o.property=this.parseIdent(!0),o.computed=Boolean(a),a&&this.expect(se.bracketR),t=this.finishNode(o,"MemberExpression")}}},{key:"parseMaybeUnary",value:function(t,e){var r=Object(n.a)(Object(p.a)(i.prototype),"parseMaybeUnary",this).call(this,t,e);return"delete"==r.operator&&"MemberExpression"==r.argument.type&&"PrivateName"==r.argument.property.type&&this.raise(r.start,"Private elements may not be deleted"),r}},{key:"parseIdent",value:function(t,e){var r=Object(n.a)(Object(p.a)(i.prototype),"parseIdent",this).call(this,t,e);return this._inFieldValue&&"arguments"==r.name&&this.raise(r.start,"A class field initializer may not contain arguments"),r}},{key:"parseExprAtom",value:function(t){var e=Object(n.a)(Object(p.a)(i.prototype),"parseExprAtom",this).call(this,t);return this._inFieldValue&&"Super"==e.type&&this.raise(e.start,"A class field initializer may not contain super"),e}}]),i}(t)})),wi=["getterSetter","arrow","classes","computedProperty","conciseMethodProperty","defaultParameter","destructuring","forOf","generator","letConst","moduleExport","moduleImport","numericLiteral","parameterDestructuring","spreadRest","stickyRegExp","templateString","exponentiation","reservedProperties","trailingFunctionCommas","asyncAwait","objectRestSpread"],Ei=["dangerousTaggedTemplateString","dangerousForOf"];function Ci(t,e){var i;void 0===e&&(e={});var r=null;try{i=Si.parse(t,{ecmaVersion:10,preserveParens:!0,sourceType:"module",allowAwaitOutsideFunction:!0,allowReturnOutsideFunction:!0,allowHashBang:!0,onComment:function(t,e){if(!r){var i=/@jsx\s+([^\s]+)/.exec(e);i&&(r=i[1])}}}),e.jsx=r||e.jsx}catch(e){throw e.snippet=Ce(t,e.loc),e.toString=function(){return e.name+": "+e.message+"\n"+e.snippet},e}var s=Object.create(null);return wi.forEach((function(t){s[t]=!0})),Ei.forEach((function(t){s[t]=!0})),Object.keys(e.transforms||{}).forEach((function(t){if("modules"===t)return"moduleImport"in e.transforms||(s.moduleImport=e.transforms.modules),void("moduleExport"in e.transforms||(s.moduleExport=e.transforms.modules));if(!(t in s))throw new Error("Unknown transform '"+t+"'");s[t]=e.transforms[t]})),!0===e.objectAssign&&(e.objectAssign="Object.assign"),new ki(t,i,s,e).export(e)}}).call(this,i("HDXh").Buffer)}}]); +//# sourceMappingURL=056bf7cd-aa3dcb82f3a8329ec297.js.map \ No newline at end of file diff --git a/sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js.map b/sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js.map new file mode 100644 index 00000000..430c3979 --- /dev/null +++ b/sites/oteguide/056bf7cd-aa3dcb82f3a8329ec297.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./node_modules/@philpl/buble/dist/buble.es.js"],"names":["_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","prototype","valueOf","call","e","_isNativeReflectConstruct","result","Super","NewTarget","this","constructor","arguments","apply","t","3","5","6","strict","strictBind","i","s","r","n","a","RegExp","o","p","h","c","length","l","test","String","fromCharCode","u","d","label","keyword","beforeExpr","startsExpr","isLoop","isAssign","prefix","postfix","binop","updateContext","f","m","g","y","v","x","num","regexp","string","name","eof","bracketL","bracketR","braceL","braceR","parenL","parenR","comma","semi","colon","dot","question","arrow","template","invalidTemplate","ellipsis","backQuote","dollarBraceL","eq","assign","incDec","logicalOR","logicalAND","bitwiseOR","bitwiseXOR","bitwiseAND","equality","relational","bitShift","plusMin","modulo","star","slash","starstar","_break","_case","_catch","_continue","_debugger","_default","_do","_else","_finally","_for","_function","_if","_return","_switch","_throw","_try","_var","_const","_while","_with","_new","_this","_super","_class","_extends","_export","_import","_null","_true","_false","_in","_instanceof","_typeof","_void","_delete","b","_","source","S","k","w","E","Object","C","hasOwnProperty","A","toString","I","L","Array","isArray","N","replace","P","line","column","offset","T","start","end","sourceFile","R","lastIndex","exec","index","O","ecmaVersion","sourceType","onInsertedSemicolon","onTrailingComma","allowReserved","allowReturnOutsideFunction","allowImportExportEverywhere","allowAwaitOutsideFunction","allowHashBang","locations","onToken","onComment","ranges","program","directSourceFile","preserveParens","F","M","options","push","type","value","loc","range","keywords","reservedWords","reservedWordsStrict","reservedWordsStrictBind","input","containsEsc","pos","lineStart","lastIndexOf","curLine","slice","split","startLoc","endLoc","curPosition","lastTokEndLoc","lastTokStartLoc","lastTokStart","lastTokEnd","context","initialContext","exprAllowed","inModule","strictDirective","potentialArrowAt","yieldPos","awaitPos","awaitIdentPos","labels","undefinedExports","skipLineComment","scopeStack","enterScope","regexpState","U","inFunction","configurable","inGenerator","inAsync","allowSuper","allowDirectSuper","treatFunctionsAsVar","parse","startNode","nextToken","parseTopLevel","get","currentVarScope","flags","currentThisScope","treatFunctionsAsVarInScope","currentScope","inNonArrowFunction","extend","parseExpressionAt","parseExpression","tokenizer","defineProperties","q","X","J","shorthandAssign","trailingComma","parenthesizedAssign","parenthesizedBind","doubleProto","eat","next","isContextual","eatContextual","expectContextual","unexpected","canInsertSemicolon","insertSemicolon","semicolon","afterTrailingComma","expect","raise","checkPatternErrors","raiseRecoverable","checkExpressionErrors","checkYieldAwaitInDefaultParams","isSimpleAssignTarget","expression","W","body","parseStatement","keys","adaptDirectivePrologue","finishNode","z","kind","H","isLet","charCodeAt","isAsyncFunction","charAt","parseBreakContinueStatement","parseDebuggerStatement","parseDoStatement","parseForStatement","parseFunctionStatement","parseClass","parseIfStatement","parseReturnStatement","parseSwitchStatement","parseThrowStatement","parseTryStatement","parseVarStatement","parseWhileStatement","parseWithStatement","parseBlock","parseEmptyStatement","parseImport","parseExport","parseLabeledStatement","parseExpressionStatement","parseIdent","pop","parseParenExpression","parseFor","parseVar","declarations","init","await","parseForIn","toAssignable","checkLVal","parseFunction","Q","K","consequent","alternate","argument","discriminant","cases","exitScope","G","block","handler","param","parseBindingAtom","finalizer","object","statementStart","indexOf","update","id","left","right","parseMaybeAssign","parseVarId","initFunction","generator","async","parseFunctionParams","parseFunctionBody","params","parseBindingList","parseClassId","parseClassSuper","parseClassElement","superClass","_s","key","computed","startNodeAt","static","parsePropertyName","parseClassMethod","parseMethod","parseExprSubscripts","parseExprAtom","checkExport","declaration","shouldParseExportStatement","checkVariableExport","specifiers","parseExportSpecifiers","checkUnreserved","local","checkLocalExport","checkPatternExport","properties","elements","exported","parseImportSpecifiers","imported","isDirectiveCandidate","directive","raw","$","toAssignableList","operator","parseSpread","parseRestBinding","parseObj","parseBindingListItem","parseMaybeDefault","declareName","Y","checkPropClash","method","shorthand","proto","set","expressions","parseYield","parseMaybeConditional","parseExprOps","parseMaybeUnary","parseExprOp","buildBinary","parseAwait","parseSubscripts","parseSubscript","property","parseExprList","parseArrowExpression","callee","tag","quasi","parseTemplate","isTagged","readRegexp","parseLiteral","regex","pattern","parseParenAndDistinguishExpression","parseNew","parseParenItem","parseParenArrowList","finishNodeAt","Z","meta","parseTemplateElement","cooked","tail","quasis","isAsyncProp","parseProperty","parsePropertyValue","checkParams","isSimpleParamList","delegate","tt","SyntaxError","raisedAt","et","it","var","lexical","functions","st","rt","nt","at","token","isExpr","preserveSpace","override","ot","b_stat","b_expr","b_tmpl","p_stat","p_expr","q_tmpl","tryReadTemplateToken","f_stat","f_expr","f_expr_gen","f_gen","pt","braceIsBlock","curContext","inGeneratorContext","ht","ct","9","10","lt","ut","dt","ft","mt","binary","nonBinary","General_Category","Script","Script_Extensions","gc","sc","scx","gt","yt","parser","validFlags","unicodeProperties","switchU","switchN","lastIntValue","lastStringValue","lastAssertionIsQuantifiable","numCapturingParens","maxBackReference","groupNames","backReferenceNames","vt","xt","bt","_t","St","kt","wt","Et","Ct","reset","nextIndex","current","lookahead","advance","validateRegExpFlags","validateRegExpPattern","regexp_pattern","regexp_disjunction","regexp_alternative","regexp_eatQuantifier","regexp_eatTerm","regexp_eatAssertion","regexp_eatAtom","regexp_eatExtendedAtom","regexp_eatQuantifierPrefix","regexp_eatBracedQuantifier","regexp_eatDecimalDigits","regexp_eatPatternCharacters","regexp_eatReverseSolidusAtomEscape","regexp_eatCharacterClass","regexp_eatUncapturingGroup","regexp_eatCapturingGroup","regexp_eatAtomEscape","regexp_groupSpecifier","regexp_eatInvalidBracedQuantifier","regexp_eatExtendedPatternCharacter","regexp_eatSyntaxCharacter","regexp_eatGroupName","regexp_eatRegExpIdentifierName","regexp_eatRegExpIdentifierStart","regexp_eatRegExpIdentifierPart","regexp_eatRegExpUnicodeEscapeSequence","regexp_eatBackReference","regexp_eatCharacterClassEscape","regexp_eatCharacterEscape","regexp_eatKGroupName","regexp_eatDecimalEscape","regexp_eatControlEscape","regexp_eatCControlLetter","regexp_eatZero","regexp_eatHexEscapeSequence","regexp_eatLegacyOctalEscapeSequence","regexp_eatIdentityEscape","regexp_eatControlLetter","regexp_eatFixedHexDigits","regexp_eatHexDigits","regexp_eatUnicodePropertyValueExpression","regexp_eatUnicodePropertyName","regexp_eatUnicodePropertyValue","regexp_validateUnicodePropertyNameAndValue","regexp_eatLoneUnicodePropertyNameOrValue","regexp_validateUnicodePropertyNameOrValue","regexp_classRanges","regexp_eatClassAtom","regexp_eatClassEscape","regexp_eatClassControlLetter","regexp_eatOctalDigit","At","It","Lt","getToken","Symbol","iterator","done","skipSpace","finishToken","readToken","fullCharCodeAtPos","readWord","getTokenFromCode","skipBlockComment","readToken_dot","readNumber","readToken_slash","finishOp","readToken_mult_modulo_exp","readToken_pipe_amp","readToken_caret","readToken_plus_min","readToken_lt_gt","readToken_eq_excl","readRadixNumber","readString","readWord1","readInt","Infinity","parseInt","parseFloat","readCodePoint","readHexChar","invalidStringToken","readEscapedChar","Nt","inTemplateElement","readTmplToken","readInvalidTemplateToken","substr","match","Pt","quot","amp","apos","nbsp","iexcl","cent","pound","curren","yen","brvbar","sect","uml","copy","ordf","laquo","not","shy","reg","macr","deg","plusmn","sup2","sup3","acute","micro","para","middot","cedil","sup1","ordm","raquo","frac14","frac12","frac34","iquest","Agrave","Aacute","Acirc","Atilde","Auml","Aring","AElig","Ccedil","Egrave","Eacute","Ecirc","Euml","Igrave","Iacute","Icirc","Iuml","ETH","Ntilde","Ograve","Oacute","Ocirc","Otilde","Ouml","times","Oslash","Ugrave","Uacute","Ucirc","Uuml","Yacute","THORN","szlig","agrave","aacute","acirc","atilde","auml","aring","aelig","ccedil","egrave","eacute","ecirc","euml","igrave","iacute","icirc","iuml","eth","ntilde","ograve","oacute","ocirc","otilde","ouml","divide","oslash","ugrave","uacute","ucirc","uuml","yacute","thorn","yuml","OElig","oelig","Scaron","scaron","Yuml","fnof","circ","tilde","Alpha","Beta","Gamma","Delta","Epsilon","Zeta","Eta","Theta","Iota","Kappa","Lambda","Mu","Nu","Xi","Omicron","Pi","Rho","Sigma","Tau","Upsilon","Phi","Chi","Psi","Omega","alpha","beta","gamma","delta","epsilon","zeta","eta","theta","iota","kappa","lambda","mu","nu","xi","omicron","pi","rho","sigmaf","sigma","tau","upsilon","phi","chi","psi","omega","thetasym","upsih","piv","ensp","emsp","thinsp","zwnj","zwj","lrm","rlm","ndash","mdash","lsquo","rsquo","sbquo","ldquo","rdquo","bdquo","dagger","Dagger","bull","hellip","permil","prime","Prime","lsaquo","rsaquo","oline","frasl","euro","image","weierp","real","trade","alefsym","larr","uarr","rarr","darr","harr","crarr","lArr","uArr","rArr","dArr","hArr","forall","part","exist","empty","nabla","isin","notin","ni","prod","sum","minus","lowast","radic","prop","infin","ang","and","or","cap","cup","int","there4","sim","cong","asymp","ne","equiv","le","ge","sub","sup","nsub","sube","supe","oplus","otimes","perp","sdot","lceil","rceil","lfloor","rfloor","lang","rang","loz","spades","clubs","hearts","diams","Tt","version","Parser","defaultOptions","Position","SourceLocation","getLineInfo","Node","TokenType","tokTypes","keywordTypes","TokContext","tokContexts","isIdentifierChar","isIdentifierStart","Token","isNewLine","lineBreak","lineBreakG","nonASCIIwhitespace","Rt","Ot","jt","Vt","Dt","Bt","Ft","Mt","Ut","qt","Xt","Jt","Wt","jsxName","jsxText","jsxTagStart","jsxTagEnd","zt","namespace","Ht","_e2","_i2","jsx_readEntity","jsx_readNewLine","_s2","jsx_parseIdentifier","allowNamespaces","jsx_parseNamespacedName","allowNamespacedObjects","_t2","_t3","jsx_parseExpressionContainer","jsx_parseEmptyExpression","jsx_parseAttributeValue","attributes","jsx_parseElementName","jsx_parseAttribute","selfClosing","jsx_parseOpeningElementAt","jsx_parseClosingElementAt","jsx_parseElementAt","children","jsx_parseText","jsx_parseElement","jsx_readToken","jsx_readWord","jsx_readString","Gt","Qt","Kt","defineProperty","DynamicImportKey","enumerable","writable","Function","getOwnPropertyDescriptor","getPrototypeOf","default","TypeError","ReferenceError","__proto__","create","setPrototypeOf","exports","__esModule","$t","Yt","Zt","_e3","_inFieldValue","te","ee","se","re","original","intro","outro","content","storeName","edited","previous","appendLeft","appendRight","clone","contains","eachNext","eachPrevious","edit","prependLeft","prependRight","trimEnd","trimStart","Error","window","btoa","unescape","encodeURIComponent","Buffer","from","ae","file","sources","sourcesContent","names","mappings","join","oe","filter","reduce","Math","min","pe","shift","concat","JSON","stringify","toUrl","he","ce","hires","generatedCodeLine","generatedCodeColumn","rawSegments","pending","addEdit","addUneditedChunk","de","insertLeft","insertRight","fe","firstChunk","lastChunk","lastSearchedChunk","byStart","byEnd","filename","indentExclusionRanges","sourcemapLocations","storedNames","indentStr","me","forEach","map","toJSON","addSourcemapLocation","append","_split","generateDecodedMap","includeContent","generateMap","getIndentString","indent","exclude","indentStart","_splitChunk","insert","console","warn","move","overwrite","contentOnly","prepend","remove","lastChar","lastLine","snip","isEmpty","trim","trimLines","trimEndAborted","trimStartAborted","ye","ve","ancestor","parent","findLexicalBoundary","findNearest","unparenthesizedParent","unparenthesize","findScope","getIndentation","initialise","magicString","transpile","Identifier","ObjectPattern","Property","ArrayPattern","RestElement","AssignmentPattern","xe","be","isBlockScope","createDeclarationCallback","declare","functionScope","identifiers","references","blockScopedDeclarations","aliases","Se","ke","max","addDeclaration","node","instances","addReference","consolidated","consolidateReference","consolidate","createIdentifier","createDeclaration","findDeclaration","resolveName","we","char","_e","message","stack","snippet","missingTransform","Ee","Ce","Ie","Ae","Ne","Le","getObjectWithoutPropertiesHelper","Pe","createScope","parentIsFunction","isFunctionBlock","scope","createdDeclarations","thisAlias","argumentsAlias","defaultParameters","getArgumentsAlias","getArgumentsArrayAlias","argumentsArrayAlias","getThisAlias","indentation","synthetic","transpileParameters","letConst","transpileBlockScopedIdentifiers","defaultParameter","spreadRest","parameterDestructuring","shouldRewriteAsFunction","reassigned","outer","inner","rewritten","Te","Re","some","splice","Oe","je","Ve","De","Be","asyncAwait","needsArguments","trailingFunctionCommas","Fe","Me","exponentiation","transpileExponentiation","destructuring","transpileDestructuring","Ue","qe","Xe","Je","depth","canBreak","loop","We","noCall","ze","classes","isConstructorBody","namedFunctionExpressions","getterSetter","He","indentExclusions","Ge","Qe","Ke","moduleExport","$e","Ye","createdScope","thisRefs","alias","args","canReturn","Ze","ti","destructurePattern","ei","forOf","dangerousForOf","ii","si","conciseMethodProperty","ri","ai","moduleImport","oi","hi","ci","li","openingElement","ui","di","fi","openingFragment","mi","gi","ArrayExpression","ArrowFunctionExpression","AssignmentExpression","AwaitExpression","BinaryExpression","BreakStatement","CallExpression","ClassBody","ClassDeclaration","ClassExpression","ContinueStatement","DoWhileStatement","ExportNamedDeclaration","ExportDefaultDeclaration","ForStatement","ForInStatement","ForOfStatement","FunctionDeclaration","FunctionExpression","IfStatement","Import","ImportDeclaration","ImportDefaultSpecifier","ImportSpecifier","JSXAttribute","JSXClosingElement","JSXClosingFragment","JSXElement","JSXExpressionContainer","JSXFragment","JSXOpeningElement","jsx","toLowerCase","objectAssign","JSXOpeningFragment","JSXSpreadAttribute","Literal","indentExclusionElements","numericLiteral","MemberExpression","reservedProperties","NewExpression","ObjectExpression","computedProperty","objectRestSpread","ReturnStatement","nearestFunction","shouldWrap","superClassName","isCalled","isMember","TaggedTemplateExpression","templateString","dangerousTaggedTemplateString","sort","templateLiteralQuasis","prependAt","TemplateElement","TemplateLiteral","ThisExpression","UpdateExpression","VariableDeclaration","VariableDeclarator","isLeftDeclaratorOfLoop","WhileStatement","yi","Program","vi","ast","__wrapped","objectWithoutPropertiesHelper","export","code","bi","_t4","_class2","_super2","_t5","_privateBoundNamesStack","_unresolvedPrivateNamesStack","_t6","_t7","_i3","_r","_s3","_i","Si","ki","transforms","modules"],"mappings":"4FAAA,+IASA,SAASA,EAAaC,GAAW,IAAIC,EAErC,WAAuC,GAAuB,oBAAZC,UAA4BA,QAAQC,UAAW,OAAO,EAAO,GAAID,QAAQC,UAAUC,KAAM,OAAO,EAAO,GAAqB,mBAAVC,MAAsB,OAAO,EAAM,IAAsF,OAAhFC,QAAQC,UAAUC,QAAQC,KAAKP,QAAQC,UAAUG,QAAS,IAAI,iBAAyB,EAAQ,MAAOI,GAAK,OAAO,GAF9PC,GAA6B,OAAO,WAAkC,IAAsCC,EAAlCC,EAAQ,YAAgBb,GAAkB,GAAIC,EAA2B,CAAE,IAAIa,EAAY,YAAgBC,MAAMC,YAAaJ,EAASV,QAAQC,UAAUU,EAAOI,UAAWH,QAAqBF,EAASC,EAAMK,MAAMH,KAAME,WAAc,OAAO,YAA2BF,KAAMH,IAI5Z,IAAIO,EAAI,CACNC,EAAG,sNACHC,EAAG,+CACHC,EAAG,OACHC,OAAQ,yEACRC,WAAY,kBAEVd,EAAI,8KACJe,EAAI,CACNJ,EAAGX,EACHY,EAAGZ,EAAI,4CAELgB,EAAI,kBACJC,EAAI,86BACJC,EAAI,ijBACJC,EAAI,IAAIC,OAAO,IAAMH,EAAI,KACzBI,EAAI,IAAID,OAAO,IAAMH,EAAIC,EAAI,KACjCD,EAAIC,EAAI,KACR,IAAII,EAAI,CAAC,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,IAAK,GAAI,GAAI,IAAK,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,IAAK,GAAI,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,IAAK,IAAK,GAAI,GAAI,GAAI,EAAG,IAAK,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,GAAI,GAAI,EAAG,EAAG,GAAI,IAAK,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,IAAK,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,IAAK,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,GAAI,IAAK,GAAI,IAAK,GAAI,GAAI,EAAG,IAAK,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,IAAK,EAAG,EAAG,GAAI,GAAI,EAAG,GAAI,GAAI,IAAK,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,IAAK,GAAI,IAAK,IAAK,IAAK,IAAK,GAAI,IAAK,KAAM,KAAM,KAAM,IAAK,KAAM,IAAK,EAAG,GAAI,IAAK,GAAI,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,GAAI,IAAK,GAAI,IAAK,GAAI,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,KAAM,GAAI,IAAK,KAAM,IAAK,GAAI,IAAK,KAAM,IAAK,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,KAAM,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,KAAM,IAAK,GAAI,GAAI,KAAM,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,KAAM,MAAO,GAAI,KAAM,GAAI,IAAK,EAAG,KAAM,GAAI,KAAM,KAAM,KACrjDC,EAAI,CAAC,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,IAAK,EAAG,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,IAAK,EAAG,IAAK,EAAG,EAAG,EAAG,IAAK,GAAI,IAAK,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,IAAK,GAAI,GAAI,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,IAAK,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,EAAG,EAAG,GAAI,GAAI,EAAG,EAAG,IAAK,GAAI,IAAK,EAAG,IAAK,EAAG,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,IAAK,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,EAAG,GAAI,IAAK,EAAG,EAAG,EAAG,EAAG,EAAG,EAA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","file":"056bf7cd-aa3dcb82f3a8329ec297.js","sourcesContent":["import _classCallCheck from \"/home/t42/Documents/programming/Projects/OT_Guide/IL-2 Guide/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/home/t42/Documents/programming/Projects/OT_Guide/IL-2 Guide/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _get from \"/home/t42/Documents/programming/Projects/OT_Guide/IL-2 Guide/node_modules/@babel/runtime/helpers/esm/get\";\nimport _inherits from \"/home/t42/Documents/programming/Projects/OT_Guide/IL-2 Guide/node_modules/@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"/home/t42/Documents/programming/Projects/OT_Guide/IL-2 Guide/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/home/t42/Documents/programming/Projects/OT_Guide/IL-2 Guide/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport \"core-js/modules/es.string.trim-end.js\";\nimport \"core-js/modules/es.string.trim-start.js\";\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nvar t = {\n 3: \"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile\",\n 5: \"class enum extends super const export import\",\n 6: \"enum\",\n strict: \"implements interface let package private protected public static yield\",\n strictBind: \"eval arguments\"\n},\n e = \"break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this\",\n i = {\n 5: e,\n 6: e + \" const class extends export import super\"\n},\n s = /^in(stanceof)?$/,\n r = \"ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࢠ-ࢴࢶ-ࢽऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿯ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞹꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ\",\n n = \"‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ංඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ູົຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭ᳲ-᳴᳷-᳹᷀-᷹᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_\",\n a = new RegExp(\"[\" + r + \"]\"),\n o = new RegExp(\"[\" + r + n + \"]\");\nr = n = null;\nvar p = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 157, 310, 10, 21, 11, 7, 153, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 477, 28, 11, 0, 9, 21, 190, 52, 76, 44, 33, 24, 27, 35, 30, 0, 12, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 85, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 54, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 86, 26, 230, 43, 117, 63, 32, 0, 257, 0, 11, 39, 8, 0, 22, 0, 12, 39, 3, 3, 20, 0, 35, 56, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 270, 921, 103, 110, 18, 195, 2749, 1070, 4050, 582, 8634, 568, 8, 30, 114, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 68, 12, 0, 67, 12, 65, 1, 31, 6129, 15, 754, 9486, 286, 82, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 4149, 196, 60, 67, 1213, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42710, 42, 4148, 12, 221, 3, 5761, 15, 7472, 3104, 541],\n h = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 525, 10, 176, 2, 54, 14, 32, 9, 16, 3, 46, 10, 54, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 4, 9, 83, 11, 7, 0, 161, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 14, 5, 9, 243, 14, 166, 9, 280, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 19306, 9, 135, 4, 60, 6, 26, 9, 1016, 45, 17, 3, 19723, 1, 5319, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 2214, 6, 110, 6, 6, 9, 792487, 239];\n\nfunction c(t, e) {\n for (var i = 65536, s = 0; s < e.length; s += 2) {\n if ((i += e[s]) > t) return !1;\n if ((i += e[s + 1]) >= t) return !0;\n }\n}\n\nfunction l(t, e) {\n return t < 65 ? 36 === t : t < 91 || (t < 97 ? 95 === t : t < 123 || (t <= 65535 ? t >= 170 && a.test(String.fromCharCode(t)) : !1 !== e && c(t, p)));\n}\n\nfunction u(t, e) {\n return t < 48 ? 36 === t : t < 58 || !(t < 65) && (t < 91 || (t < 97 ? 95 === t : t < 123 || (t <= 65535 ? t >= 170 && o.test(String.fromCharCode(t)) : !1 !== e && (c(t, p) || c(t, h)))));\n}\n\nvar d = function d(t, e) {\n void 0 === e && (e = {}), this.label = t, this.keyword = e.keyword, this.beforeExpr = !!e.beforeExpr, this.startsExpr = !!e.startsExpr, this.isLoop = !!e.isLoop, this.isAssign = !!e.isAssign, this.prefix = !!e.prefix, this.postfix = !!e.postfix, this.binop = e.binop || null, this.updateContext = null;\n};\n\nfunction f(t, e) {\n return new d(t, {\n beforeExpr: !0,\n binop: e\n });\n}\n\nvar m = {\n beforeExpr: !0\n},\n g = {\n startsExpr: !0\n},\n y = {};\n\nfunction v(t, e) {\n return void 0 === e && (e = {}), e.keyword = t, y[t] = new d(t, e);\n}\n\nvar x = {\n num: new d(\"num\", g),\n regexp: new d(\"regexp\", g),\n string: new d(\"string\", g),\n name: new d(\"name\", g),\n eof: new d(\"eof\"),\n bracketL: new d(\"[\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n bracketR: new d(\"]\"),\n braceL: new d(\"{\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n braceR: new d(\"}\"),\n parenL: new d(\"(\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n parenR: new d(\")\"),\n comma: new d(\",\", m),\n semi: new d(\";\", m),\n colon: new d(\":\", m),\n dot: new d(\".\"),\n question: new d(\"?\", m),\n arrow: new d(\"=>\", m),\n template: new d(\"template\"),\n invalidTemplate: new d(\"invalidTemplate\"),\n ellipsis: new d(\"...\", m),\n backQuote: new d(\"`\", g),\n dollarBraceL: new d(\"${\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n eq: new d(\"=\", {\n beforeExpr: !0,\n isAssign: !0\n }),\n assign: new d(\"_=\", {\n beforeExpr: !0,\n isAssign: !0\n }),\n incDec: new d(\"++/--\", {\n prefix: !0,\n postfix: !0,\n startsExpr: !0\n }),\n prefix: new d(\"!/~\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n }),\n logicalOR: f(\"||\", 1),\n logicalAND: f(\"&&\", 2),\n bitwiseOR: f(\"|\", 3),\n bitwiseXOR: f(\"^\", 4),\n bitwiseAND: f(\"&\", 5),\n equality: f(\"==/!=/===/!==\", 6),\n relational: f(\"/<=/>=\", 7),\n bitShift: f(\"<>/>>>\", 8),\n plusMin: new d(\"+/-\", {\n beforeExpr: !0,\n binop: 9,\n prefix: !0,\n startsExpr: !0\n }),\n modulo: f(\"%\", 10),\n star: f(\"*\", 10),\n slash: f(\"/\", 10),\n starstar: new d(\"**\", {\n beforeExpr: !0\n }),\n _break: v(\"break\"),\n _case: v(\"case\", m),\n _catch: v(\"catch\"),\n _continue: v(\"continue\"),\n _debugger: v(\"debugger\"),\n _default: v(\"default\", m),\n _do: v(\"do\", {\n isLoop: !0,\n beforeExpr: !0\n }),\n _else: v(\"else\", m),\n _finally: v(\"finally\"),\n _for: v(\"for\", {\n isLoop: !0\n }),\n _function: v(\"function\", g),\n _if: v(\"if\"),\n _return: v(\"return\", m),\n _switch: v(\"switch\"),\n _throw: v(\"throw\", m),\n _try: v(\"try\"),\n _var: v(\"var\"),\n _const: v(\"const\"),\n _while: v(\"while\", {\n isLoop: !0\n }),\n _with: v(\"with\"),\n _new: v(\"new\", {\n beforeExpr: !0,\n startsExpr: !0\n }),\n _this: v(\"this\", g),\n _super: v(\"super\", g),\n _class: v(\"class\", g),\n _extends: v(\"extends\", m),\n _export: v(\"export\"),\n _import: v(\"import\"),\n _null: v(\"null\", g),\n _true: v(\"true\", g),\n _false: v(\"false\", g),\n _in: v(\"in\", {\n beforeExpr: !0,\n binop: 7\n }),\n _instanceof: v(\"instanceof\", {\n beforeExpr: !0,\n binop: 7\n }),\n _typeof: v(\"typeof\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n }),\n _void: v(\"void\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n }),\n _delete: v(\"delete\", {\n beforeExpr: !0,\n prefix: !0,\n startsExpr: !0\n })\n},\n b = /\\r\\n?|\\n|\\u2028|\\u2029/,\n _ = new RegExp(b.source, \"g\");\n\nfunction S(t, e) {\n return 10 === t || 13 === t || !e && (8232 === t || 8233 === t);\n}\n\nvar k = /[\\u1680\\u2000-\\u200a\\u202f\\u205f\\u3000\\ufeff]/,\n w = /(?:\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*/g,\n E = Object.prototype,\n C = E.hasOwnProperty,\n A = E.toString;\n\nfunction I(t, e) {\n return C.call(t, e);\n}\n\nvar L = Array.isArray || function (t) {\n return \"[object Array]\" === A.call(t);\n};\n\nfunction N(t) {\n return new RegExp(\"^(?:\" + t.replace(/ /g, \"|\") + \")$\");\n}\n\nvar P = function P(t, e) {\n this.line = t, this.column = e;\n};\n\nP.prototype.offset = function (t) {\n return new P(this.line, this.column + t);\n};\n\nvar T = function T(t, e, i) {\n this.start = e, this.end = i, null !== t.sourceFile && (this.source = t.sourceFile);\n};\n\nfunction R(t, e) {\n for (var i = 1, s = 0;;) {\n _.lastIndex = s;\n\n var r = _.exec(t);\n\n if (!(r && r.index < e)) return new P(i, e - s);\n ++i, s = r.index + r[0].length;\n }\n}\n\nvar O = {\n ecmaVersion: 9,\n sourceType: \"script\",\n onInsertedSemicolon: null,\n onTrailingComma: null,\n allowReserved: null,\n allowReturnOutsideFunction: !1,\n allowImportExportEverywhere: !1,\n allowAwaitOutsideFunction: !1,\n allowHashBang: !1,\n locations: !1,\n onToken: null,\n onComment: null,\n ranges: !1,\n program: null,\n sourceFile: null,\n directSourceFile: null,\n preserveParens: !1\n},\n j = 2,\n V = 1 | j,\n D = 4,\n B = 8;\n\nfunction F(t, e) {\n return j | (t ? D : 0) | (e ? B : 0);\n}\n\nvar M = function M(e, s, r) {\n this.options = e = function (t) {\n var e = {};\n\n for (var i in O) {\n e[i] = t && I(t, i) ? t[i] : O[i];\n }\n\n if (e.ecmaVersion >= 2015 && (e.ecmaVersion -= 2009), null == e.allowReserved && (e.allowReserved = e.ecmaVersion < 5), L(e.onToken)) {\n var s = e.onToken;\n\n e.onToken = function (t) {\n return s.push(t);\n };\n }\n\n return L(e.onComment) && (e.onComment = function (t, e) {\n return function (i, s, r, n, a, o) {\n var p = {\n type: i ? \"Block\" : \"Line\",\n value: s,\n start: r,\n end: n\n };\n t.locations && (p.loc = new T(this, a, o)), t.ranges && (p.range = [r, n]), e.push(p);\n };\n }(e, e.onComment)), e;\n }(e), this.sourceFile = e.sourceFile, this.keywords = N(i[e.ecmaVersion >= 6 ? 6 : 5]);\n var n = \"\";\n\n if (!e.allowReserved) {\n for (var a = e.ecmaVersion; !(n = t[a]); a--) {\n ;\n }\n\n \"module\" === e.sourceType && (n += \" await\");\n }\n\n this.reservedWords = N(n);\n var o = (n ? n + \" \" : \"\") + t.strict;\n this.reservedWordsStrict = N(o), this.reservedWordsStrictBind = N(o + \" \" + t.strictBind), this.input = String(s), this.containsEsc = !1, r ? (this.pos = r, this.lineStart = this.input.lastIndexOf(\"\\n\", r - 1) + 1, this.curLine = this.input.slice(0, this.lineStart).split(b).length) : (this.pos = this.lineStart = 0, this.curLine = 1), this.type = x.eof, this.value = null, this.start = this.end = this.pos, this.startLoc = this.endLoc = this.curPosition(), this.lastTokEndLoc = this.lastTokStartLoc = null, this.lastTokStart = this.lastTokEnd = this.pos, this.context = this.initialContext(), this.exprAllowed = !0, this.inModule = \"module\" === e.sourceType, this.strict = this.inModule || this.strictDirective(this.pos), this.potentialArrowAt = -1, this.yieldPos = this.awaitPos = this.awaitIdentPos = 0, this.labels = [], this.undefinedExports = {}, 0 === this.pos && e.allowHashBang && \"#!\" === this.input.slice(0, 2) && this.skipLineComment(2), this.scopeStack = [], this.enterScope(1), this.regexpState = null;\n},\n U = {\n inFunction: {\n configurable: !0\n },\n inGenerator: {\n configurable: !0\n },\n inAsync: {\n configurable: !0\n },\n allowSuper: {\n configurable: !0\n },\n allowDirectSuper: {\n configurable: !0\n },\n treatFunctionsAsVar: {\n configurable: !0\n }\n};\n\nM.prototype.parse = function () {\n var t = this.options.program || this.startNode();\n return this.nextToken(), this.parseTopLevel(t);\n}, U.inFunction.get = function () {\n return (this.currentVarScope().flags & j) > 0;\n}, U.inGenerator.get = function () {\n return (this.currentVarScope().flags & B) > 0;\n}, U.inAsync.get = function () {\n return (this.currentVarScope().flags & D) > 0;\n}, U.allowSuper.get = function () {\n return (64 & this.currentThisScope().flags) > 0;\n}, U.allowDirectSuper.get = function () {\n return (128 & this.currentThisScope().flags) > 0;\n}, U.treatFunctionsAsVar.get = function () {\n return this.treatFunctionsAsVarInScope(this.currentScope());\n}, M.prototype.inNonArrowFunction = function () {\n return (this.currentThisScope().flags & j) > 0;\n}, M.extend = function () {\n for (var t = [], e = arguments.length; e--;) {\n t[e] = arguments[e];\n }\n\n for (var i = this, s = 0; s < t.length; s++) {\n i = t[s](i);\n }\n\n return i;\n}, M.parse = function (t, e) {\n return new this(e, t).parse();\n}, M.parseExpressionAt = function (t, e, i) {\n var s = new this(i, t, e);\n return s.nextToken(), s.parseExpression();\n}, M.tokenizer = function (t, e) {\n return new this(e, t);\n}, Object.defineProperties(M.prototype, U);\nvar q = M.prototype,\n X = /^(?:'((?:\\\\.|[^'])*?)'|\"((?:\\\\.|[^\"])*?)\")/;\n\nfunction J() {\n this.shorthandAssign = this.trailingComma = this.parenthesizedAssign = this.parenthesizedBind = this.doubleProto = -1;\n}\n\nq.strictDirective = function (t) {\n for (;;) {\n w.lastIndex = t, t += w.exec(this.input)[0].length;\n var e = X.exec(this.input.slice(t));\n if (!e) return !1;\n if (\"use strict\" === (e[1] || e[2])) return !0;\n w.lastIndex = t += e[0].length, t += w.exec(this.input)[0].length, \";\" === this.input[t] && t++;\n }\n}, q.eat = function (t) {\n return this.type === t && (this.next(), !0);\n}, q.isContextual = function (t) {\n return this.type === x.name && this.value === t && !this.containsEsc;\n}, q.eatContextual = function (t) {\n return !!this.isContextual(t) && (this.next(), !0);\n}, q.expectContextual = function (t) {\n this.eatContextual(t) || this.unexpected();\n}, q.canInsertSemicolon = function () {\n return this.type === x.eof || this.type === x.braceR || b.test(this.input.slice(this.lastTokEnd, this.start));\n}, q.insertSemicolon = function () {\n if (this.canInsertSemicolon()) return this.options.onInsertedSemicolon && this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc), !0;\n}, q.semicolon = function () {\n this.eat(x.semi) || this.insertSemicolon() || this.unexpected();\n}, q.afterTrailingComma = function (t, e) {\n if (this.type === t) return this.options.onTrailingComma && this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc), e || this.next(), !0;\n}, q.expect = function (t) {\n this.eat(t) || this.unexpected();\n}, q.unexpected = function (t) {\n this.raise(null != t ? t : this.start, \"Unexpected token\");\n}, q.checkPatternErrors = function (t, e) {\n if (t) {\n t.trailingComma > -1 && this.raiseRecoverable(t.trailingComma, \"Comma is not permitted after the rest element\");\n var i = e ? t.parenthesizedAssign : t.parenthesizedBind;\n i > -1 && this.raiseRecoverable(i, \"Parenthesized pattern\");\n }\n}, q.checkExpressionErrors = function (t, e) {\n if (!t) return !1;\n var i = t.shorthandAssign,\n s = t.doubleProto;\n if (!e) return i >= 0 || s >= 0;\n i >= 0 && this.raise(i, \"Shorthand property assignments are valid only in destructuring patterns\"), s >= 0 && this.raiseRecoverable(s, \"Redefinition of __proto__ property\");\n}, q.checkYieldAwaitInDefaultParams = function () {\n this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos) && this.raise(this.yieldPos, \"Yield expression cannot be a default value\"), this.awaitPos && this.raise(this.awaitPos, \"Await expression cannot be a default value\");\n}, q.isSimpleAssignTarget = function (t) {\n return \"ParenthesizedExpression\" === t.type ? this.isSimpleAssignTarget(t.expression) : \"Identifier\" === t.type || \"MemberExpression\" === t.type;\n};\nvar W = M.prototype;\n\nW.parseTopLevel = function (t) {\n var e = {};\n\n for (t.body || (t.body = []); this.type !== x.eof;) {\n var i = this.parseStatement(null, !0, e);\n t.body.push(i);\n }\n\n if (this.inModule) for (var s = 0, r = Object.keys(this.undefinedExports); s < r.length; s += 1) {\n var n = r[s];\n this.raiseRecoverable(this.undefinedExports[n].start, \"Export '\" + n + \"' is not defined\");\n }\n return this.adaptDirectivePrologue(t.body), this.next(), this.options.ecmaVersion >= 6 && (t.sourceType = this.options.sourceType), this.finishNode(t, \"Program\");\n};\n\nvar z = {\n kind: \"loop\"\n},\n H = {\n kind: \"switch\"\n};\nW.isLet = function (t) {\n if (this.options.ecmaVersion < 6 || !this.isContextual(\"let\")) return !1;\n w.lastIndex = this.pos;\n var e = w.exec(this.input),\n i = this.pos + e[0].length,\n r = this.input.charCodeAt(i);\n if (91 === r) return !0;\n if (t) return !1;\n if (123 === r) return !0;\n\n if (l(r, !0)) {\n for (var n = i + 1; u(this.input.charCodeAt(n), !0);) {\n ++n;\n }\n\n var a = this.input.slice(i, n);\n if (!s.test(a)) return !0;\n }\n\n return !1;\n}, W.isAsyncFunction = function () {\n if (this.options.ecmaVersion < 8 || !this.isContextual(\"async\")) return !1;\n w.lastIndex = this.pos;\n var t = w.exec(this.input),\n e = this.pos + t[0].length;\n return !(b.test(this.input.slice(this.pos, e)) || \"function\" !== this.input.slice(e, e + 8) || e + 8 !== this.input.length && u(this.input.charAt(e + 8)));\n}, W.parseStatement = function (t, e, i) {\n var s,\n r = this.type,\n n = this.startNode();\n\n switch (this.isLet(t) && (r = x._var, s = \"let\"), r) {\n case x._break:\n case x._continue:\n return this.parseBreakContinueStatement(n, r.keyword);\n\n case x._debugger:\n return this.parseDebuggerStatement(n);\n\n case x._do:\n return this.parseDoStatement(n);\n\n case x._for:\n return this.parseForStatement(n);\n\n case x._function:\n return t && (this.strict || \"if\" !== t && \"label\" !== t) && this.options.ecmaVersion >= 6 && this.unexpected(), this.parseFunctionStatement(n, !1, !t);\n\n case x._class:\n return t && this.unexpected(), this.parseClass(n, !0);\n\n case x._if:\n return this.parseIfStatement(n);\n\n case x._return:\n return this.parseReturnStatement(n);\n\n case x._switch:\n return this.parseSwitchStatement(n);\n\n case x._throw:\n return this.parseThrowStatement(n);\n\n case x._try:\n return this.parseTryStatement(n);\n\n case x._const:\n case x._var:\n return s = s || this.value, t && \"var\" !== s && this.unexpected(), this.parseVarStatement(n, s);\n\n case x._while:\n return this.parseWhileStatement(n);\n\n case x._with:\n return this.parseWithStatement(n);\n\n case x.braceL:\n return this.parseBlock(!0, n);\n\n case x.semi:\n return this.parseEmptyStatement(n);\n\n case x._export:\n case x._import:\n return this.options.allowImportExportEverywhere || (e || this.raise(this.start, \"'import' and 'export' may only appear at the top level\"), this.inModule || this.raise(this.start, \"'import' and 'export' may appear only with 'sourceType: module'\")), r === x._import ? this.parseImport(n) : this.parseExport(n, i);\n\n default:\n if (this.isAsyncFunction()) return t && this.unexpected(), this.next(), this.parseFunctionStatement(n, !0, !t);\n var a = this.value,\n o = this.parseExpression();\n return r === x.name && \"Identifier\" === o.type && this.eat(x.colon) ? this.parseLabeledStatement(n, a, o, t) : this.parseExpressionStatement(n, o);\n }\n}, W.parseBreakContinueStatement = function (t, e) {\n var i = \"break\" === e;\n this.next(), this.eat(x.semi) || this.insertSemicolon() ? t.label = null : this.type !== x.name ? this.unexpected() : (t.label = this.parseIdent(), this.semicolon());\n\n for (var s = 0; s < this.labels.length; ++s) {\n var r = this.labels[s];\n\n if (null == t.label || r.name === t.label.name) {\n if (null != r.kind && (i || \"loop\" === r.kind)) break;\n if (t.label && i) break;\n }\n }\n\n return s === this.labels.length && this.raise(t.start, \"Unsyntactic \" + e), this.finishNode(t, i ? \"BreakStatement\" : \"ContinueStatement\");\n}, W.parseDebuggerStatement = function (t) {\n return this.next(), this.semicolon(), this.finishNode(t, \"DebuggerStatement\");\n}, W.parseDoStatement = function (t) {\n return this.next(), this.labels.push(z), t.body = this.parseStatement(\"do\"), this.labels.pop(), this.expect(x._while), t.test = this.parseParenExpression(), this.options.ecmaVersion >= 6 ? this.eat(x.semi) : this.semicolon(), this.finishNode(t, \"DoWhileStatement\");\n}, W.parseForStatement = function (t) {\n this.next();\n var e = this.options.ecmaVersion >= 9 && (this.inAsync || !this.inFunction && this.options.allowAwaitOutsideFunction) && this.eatContextual(\"await\") ? this.lastTokStart : -1;\n if (this.labels.push(z), this.enterScope(0), this.expect(x.parenL), this.type === x.semi) return e > -1 && this.unexpected(e), this.parseFor(t, null);\n var i = this.isLet();\n\n if (this.type === x._var || this.type === x._const || i) {\n var s = this.startNode(),\n r = i ? \"let\" : this.value;\n return this.next(), this.parseVar(s, !0, r), this.finishNode(s, \"VariableDeclaration\"), !(this.type === x._in || this.options.ecmaVersion >= 6 && this.isContextual(\"of\")) || 1 !== s.declarations.length || \"var\" !== r && s.declarations[0].init ? (e > -1 && this.unexpected(e), this.parseFor(t, s)) : (this.options.ecmaVersion >= 9 && (this.type === x._in ? e > -1 && this.unexpected(e) : t.await = e > -1), this.parseForIn(t, s));\n }\n\n var n = new J(),\n a = this.parseExpression(!0, n);\n return this.type === x._in || this.options.ecmaVersion >= 6 && this.isContextual(\"of\") ? (this.options.ecmaVersion >= 9 && (this.type === x._in ? e > -1 && this.unexpected(e) : t.await = e > -1), this.toAssignable(a, !1, n), this.checkLVal(a), this.parseForIn(t, a)) : (this.checkExpressionErrors(n, !0), e > -1 && this.unexpected(e), this.parseFor(t, a));\n}, W.parseFunctionStatement = function (t, e, i) {\n return this.next(), this.parseFunction(t, Q | (i ? 0 : K), !1, e);\n}, W.parseIfStatement = function (t) {\n return this.next(), t.test = this.parseParenExpression(), t.consequent = this.parseStatement(\"if\"), t.alternate = this.eat(x._else) ? this.parseStatement(\"if\") : null, this.finishNode(t, \"IfStatement\");\n}, W.parseReturnStatement = function (t) {\n return this.inFunction || this.options.allowReturnOutsideFunction || this.raise(this.start, \"'return' outside of function\"), this.next(), this.eat(x.semi) || this.insertSemicolon() ? t.argument = null : (t.argument = this.parseExpression(), this.semicolon()), this.finishNode(t, \"ReturnStatement\");\n}, W.parseSwitchStatement = function (t) {\n var e;\n this.next(), t.discriminant = this.parseParenExpression(), t.cases = [], this.expect(x.braceL), this.labels.push(H), this.enterScope(0);\n\n for (var i = !1; this.type !== x.braceR;) {\n if (this.type === x._case || this.type === x._default) {\n var s = this.type === x._case;\n e && this.finishNode(e, \"SwitchCase\"), t.cases.push(e = this.startNode()), e.consequent = [], this.next(), s ? e.test = this.parseExpression() : (i && this.raiseRecoverable(this.lastTokStart, \"Multiple default clauses\"), i = !0, e.test = null), this.expect(x.colon);\n } else e || this.unexpected(), e.consequent.push(this.parseStatement(null));\n }\n\n return this.exitScope(), e && this.finishNode(e, \"SwitchCase\"), this.next(), this.labels.pop(), this.finishNode(t, \"SwitchStatement\");\n}, W.parseThrowStatement = function (t) {\n return this.next(), b.test(this.input.slice(this.lastTokEnd, this.start)) && this.raise(this.lastTokEnd, \"Illegal newline after throw\"), t.argument = this.parseExpression(), this.semicolon(), this.finishNode(t, \"ThrowStatement\");\n};\nvar G = [];\nW.parseTryStatement = function (t) {\n if (this.next(), t.block = this.parseBlock(), t.handler = null, this.type === x._catch) {\n var e = this.startNode();\n\n if (this.next(), this.eat(x.parenL)) {\n e.param = this.parseBindingAtom();\n var i = \"Identifier\" === e.param.type;\n this.enterScope(i ? 32 : 0), this.checkLVal(e.param, i ? 4 : 2), this.expect(x.parenR);\n } else this.options.ecmaVersion < 10 && this.unexpected(), e.param = null, this.enterScope(0);\n\n e.body = this.parseBlock(!1), this.exitScope(), t.handler = this.finishNode(e, \"CatchClause\");\n }\n\n return t.finalizer = this.eat(x._finally) ? this.parseBlock() : null, t.handler || t.finalizer || this.raise(t.start, \"Missing catch or finally clause\"), this.finishNode(t, \"TryStatement\");\n}, W.parseVarStatement = function (t, e) {\n return this.next(), this.parseVar(t, !1, e), this.semicolon(), this.finishNode(t, \"VariableDeclaration\");\n}, W.parseWhileStatement = function (t) {\n return this.next(), t.test = this.parseParenExpression(), this.labels.push(z), t.body = this.parseStatement(\"while\"), this.labels.pop(), this.finishNode(t, \"WhileStatement\");\n}, W.parseWithStatement = function (t) {\n return this.strict && this.raise(this.start, \"'with' in strict mode\"), this.next(), t.object = this.parseParenExpression(), t.body = this.parseStatement(\"with\"), this.finishNode(t, \"WithStatement\");\n}, W.parseEmptyStatement = function (t) {\n return this.next(), this.finishNode(t, \"EmptyStatement\");\n}, W.parseLabeledStatement = function (t, e, i, s) {\n for (var r = 0, n = this.labels; r < n.length; r += 1) {\n n[r].name === e && this.raise(i.start, \"Label '\" + e + \"' is already declared\");\n }\n\n for (var a = this.type.isLoop ? \"loop\" : this.type === x._switch ? \"switch\" : null, o = this.labels.length - 1; o >= 0; o--) {\n var p = this.labels[o];\n if (p.statementStart !== t.start) break;\n p.statementStart = this.start, p.kind = a;\n }\n\n return this.labels.push({\n name: e,\n kind: a,\n statementStart: this.start\n }), t.body = this.parseStatement(s ? -1 === s.indexOf(\"label\") ? s + \"label\" : s : \"label\"), this.labels.pop(), t.label = i, this.finishNode(t, \"LabeledStatement\");\n}, W.parseExpressionStatement = function (t, e) {\n return t.expression = e, this.semicolon(), this.finishNode(t, \"ExpressionStatement\");\n}, W.parseBlock = function (t, e) {\n for (void 0 === t && (t = !0), void 0 === e && (e = this.startNode()), e.body = [], this.expect(x.braceL), t && this.enterScope(0); !this.eat(x.braceR);) {\n var i = this.parseStatement(null);\n e.body.push(i);\n }\n\n return t && this.exitScope(), this.finishNode(e, \"BlockStatement\");\n}, W.parseFor = function (t, e) {\n return t.init = e, this.expect(x.semi), t.test = this.type === x.semi ? null : this.parseExpression(), this.expect(x.semi), t.update = this.type === x.parenR ? null : this.parseExpression(), this.expect(x.parenR), t.body = this.parseStatement(\"for\"), this.exitScope(), this.labels.pop(), this.finishNode(t, \"ForStatement\");\n}, W.parseForIn = function (t, e) {\n var i = this.type === x._in ? \"ForInStatement\" : \"ForOfStatement\";\n return this.next(), \"ForInStatement\" === i && (\"AssignmentPattern\" === e.type || \"VariableDeclaration\" === e.type && null != e.declarations[0].init && (this.strict || \"Identifier\" !== e.declarations[0].id.type)) && this.raise(e.start, \"Invalid assignment in for-in loop head\"), t.left = e, t.right = \"ForInStatement\" === i ? this.parseExpression() : this.parseMaybeAssign(), this.expect(x.parenR), t.body = this.parseStatement(\"for\"), this.exitScope(), this.labels.pop(), this.finishNode(t, i);\n}, W.parseVar = function (t, e, i) {\n for (t.declarations = [], t.kind = i;;) {\n var s = this.startNode();\n if (this.parseVarId(s, i), this.eat(x.eq) ? s.init = this.parseMaybeAssign(e) : \"const\" !== i || this.type === x._in || this.options.ecmaVersion >= 6 && this.isContextual(\"of\") ? \"Identifier\" === s.id.type || e && (this.type === x._in || this.isContextual(\"of\")) ? s.init = null : this.raise(this.lastTokEnd, \"Complex binding patterns require an initialization value\") : this.unexpected(), t.declarations.push(this.finishNode(s, \"VariableDeclarator\")), !this.eat(x.comma)) break;\n }\n\n return t;\n}, W.parseVarId = function (t, e) {\n \"const\" !== e && \"let\" !== e || !this.isContextual(\"let\") || this.raiseRecoverable(this.start, \"let is disallowed as a lexically bound name\"), t.id = this.parseBindingAtom(), this.checkLVal(t.id, \"var\" === e ? 1 : 2, !1);\n};\nvar Q = 1,\n K = 2;\nW.parseFunction = function (t, e, i, s) {\n this.initFunction(t), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !s) && (this.type === x.star && e & K && this.unexpected(), t.generator = this.eat(x.star)), this.options.ecmaVersion >= 8 && (t.async = !!s), e & Q && (t.id = 4 & e && this.type !== x.name ? null : this.parseIdent(), !t.id || e & K || this.checkLVal(t.id, this.strict || t.generator || t.async ? this.treatFunctionsAsVar ? 1 : 2 : 3));\n var r = this.yieldPos,\n n = this.awaitPos,\n a = this.awaitIdentPos;\n return this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(F(t.async, t.generator)), e & Q || (t.id = this.type === x.name ? this.parseIdent() : null), this.parseFunctionParams(t), this.parseFunctionBody(t, i, !1), this.yieldPos = r, this.awaitPos = n, this.awaitIdentPos = a, this.finishNode(t, e & Q ? \"FunctionDeclaration\" : \"FunctionExpression\");\n}, W.parseFunctionParams = function (t) {\n this.expect(x.parenL), t.params = this.parseBindingList(x.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams();\n}, W.parseClass = function (t, e) {\n this.next();\n var i = this.strict;\n this.strict = !0, this.parseClassId(t, e), this.parseClassSuper(t);\n var s = this.startNode(),\n r = !1;\n\n for (s.body = [], this.expect(x.braceL); !this.eat(x.braceR);) {\n var n = this.parseClassElement(null !== t.superClass);\n n && (s.body.push(n), \"MethodDefinition\" === n.type && \"constructor\" === n.kind && (r && this.raise(n.start, \"Duplicate constructor in the same class\"), r = !0));\n }\n\n return t.body = this.finishNode(s, \"ClassBody\"), this.strict = i, this.finishNode(t, e ? \"ClassDeclaration\" : \"ClassExpression\");\n}, W.parseClassElement = function (t) {\n var e = this;\n if (this.eat(x.semi)) return null;\n\n var i = this.startNode(),\n s = function s(t, _s) {\n void 0 === _s && (_s = !1);\n var r = e.start,\n n = e.startLoc;\n return !(!e.eatContextual(t) || (e.type === x.parenL || _s && e.canInsertSemicolon()) && (i.key && e.unexpected(), i.computed = !1, i.key = e.startNodeAt(r, n), i.key.name = t, e.finishNode(i.key, \"Identifier\"), 1));\n };\n\n i.kind = \"method\", i.static = s(\"static\");\n var r = this.eat(x.star),\n n = !1;\n r || (this.options.ecmaVersion >= 8 && s(\"async\", !0) ? (n = !0, r = this.options.ecmaVersion >= 9 && this.eat(x.star)) : s(\"get\") ? i.kind = \"get\" : s(\"set\") && (i.kind = \"set\")), i.key || this.parsePropertyName(i);\n var a = i.key,\n o = !1;\n return i.computed || i.static || !(\"Identifier\" === a.type && \"constructor\" === a.name || \"Literal\" === a.type && \"constructor\" === a.value) ? i.static && \"Identifier\" === a.type && \"prototype\" === a.name && this.raise(a.start, \"Classes may not have a static property named prototype\") : (\"method\" !== i.kind && this.raise(a.start, \"Constructor can't have get/set modifier\"), r && this.raise(a.start, \"Constructor can't be a generator\"), n && this.raise(a.start, \"Constructor can't be an async method\"), i.kind = \"constructor\", o = t), this.parseClassMethod(i, r, n, o), \"get\" === i.kind && 0 !== i.value.params.length && this.raiseRecoverable(i.value.start, \"getter should have no params\"), \"set\" === i.kind && 1 !== i.value.params.length && this.raiseRecoverable(i.value.start, \"setter should have exactly one param\"), \"set\" === i.kind && \"RestElement\" === i.value.params[0].type && this.raiseRecoverable(i.value.params[0].start, \"Setter cannot use rest params\"), i;\n}, W.parseClassMethod = function (t, e, i, s) {\n return t.value = this.parseMethod(e, i, s), this.finishNode(t, \"MethodDefinition\");\n}, W.parseClassId = function (t, e) {\n this.type === x.name ? (t.id = this.parseIdent(), e && this.checkLVal(t.id, 2, !1)) : (!0 === e && this.unexpected(), t.id = null);\n}, W.parseClassSuper = function (t) {\n t.superClass = this.eat(x._extends) ? this.parseExprSubscripts() : null;\n}, W.parseExport = function (t, e) {\n if (this.next(), this.eat(x.star)) return this.expectContextual(\"from\"), this.type !== x.string && this.unexpected(), t.source = this.parseExprAtom(), this.semicolon(), this.finishNode(t, \"ExportAllDeclaration\");\n\n if (this.eat(x._default)) {\n var i;\n\n if (this.checkExport(e, \"default\", this.lastTokStart), this.type === x._function || (i = this.isAsyncFunction())) {\n var s = this.startNode();\n this.next(), i && this.next(), t.declaration = this.parseFunction(s, 4 | Q, !1, i);\n } else if (this.type === x._class) {\n var r = this.startNode();\n t.declaration = this.parseClass(r, \"nullableID\");\n } else t.declaration = this.parseMaybeAssign(), this.semicolon();\n\n return this.finishNode(t, \"ExportDefaultDeclaration\");\n }\n\n if (this.shouldParseExportStatement()) t.declaration = this.parseStatement(null), \"VariableDeclaration\" === t.declaration.type ? this.checkVariableExport(e, t.declaration.declarations) : this.checkExport(e, t.declaration.id.name, t.declaration.id.start), t.specifiers = [], t.source = null;else {\n if (t.declaration = null, t.specifiers = this.parseExportSpecifiers(e), this.eatContextual(\"from\")) this.type !== x.string && this.unexpected(), t.source = this.parseExprAtom();else {\n for (var n = 0, a = t.specifiers; n < a.length; n += 1) {\n var o = a[n];\n this.checkUnreserved(o.local), this.checkLocalExport(o.local);\n }\n\n t.source = null;\n }\n this.semicolon();\n }\n return this.finishNode(t, \"ExportNamedDeclaration\");\n}, W.checkExport = function (t, e, i) {\n t && (I(t, e) && this.raiseRecoverable(i, \"Duplicate export '\" + e + \"'\"), t[e] = !0);\n}, W.checkPatternExport = function (t, e) {\n var i = e.type;\n if (\"Identifier\" === i) this.checkExport(t, e.name, e.start);else if (\"ObjectPattern\" === i) for (var s = 0, r = e.properties; s < r.length; s += 1) {\n this.checkPatternExport(t, r[s]);\n } else if (\"ArrayPattern\" === i) for (var n = 0, a = e.elements; n < a.length; n += 1) {\n var o = a[n];\n o && this.checkPatternExport(t, o);\n } else \"Property\" === i ? this.checkPatternExport(t, e.value) : \"AssignmentPattern\" === i ? this.checkPatternExport(t, e.left) : \"RestElement\" === i ? this.checkPatternExport(t, e.argument) : \"ParenthesizedExpression\" === i && this.checkPatternExport(t, e.expression);\n}, W.checkVariableExport = function (t, e) {\n if (t) for (var i = 0, s = e; i < s.length; i += 1) {\n this.checkPatternExport(t, s[i].id);\n }\n}, W.shouldParseExportStatement = function () {\n return \"var\" === this.type.keyword || \"const\" === this.type.keyword || \"class\" === this.type.keyword || \"function\" === this.type.keyword || this.isLet() || this.isAsyncFunction();\n}, W.parseExportSpecifiers = function (t) {\n var e = [],\n i = !0;\n\n for (this.expect(x.braceL); !this.eat(x.braceR);) {\n if (i) i = !1;else if (this.expect(x.comma), this.afterTrailingComma(x.braceR)) break;\n var s = this.startNode();\n s.local = this.parseIdent(!0), s.exported = this.eatContextual(\"as\") ? this.parseIdent(!0) : s.local, this.checkExport(t, s.exported.name, s.exported.start), e.push(this.finishNode(s, \"ExportSpecifier\"));\n }\n\n return e;\n}, W.parseImport = function (t) {\n return this.next(), this.type === x.string ? (t.specifiers = G, t.source = this.parseExprAtom()) : (t.specifiers = this.parseImportSpecifiers(), this.expectContextual(\"from\"), t.source = this.type === x.string ? this.parseExprAtom() : this.unexpected()), this.semicolon(), this.finishNode(t, \"ImportDeclaration\");\n}, W.parseImportSpecifiers = function () {\n var t = [],\n e = !0;\n\n if (this.type === x.name) {\n var i = this.startNode();\n if (i.local = this.parseIdent(), this.checkLVal(i.local, 2), t.push(this.finishNode(i, \"ImportDefaultSpecifier\")), !this.eat(x.comma)) return t;\n }\n\n if (this.type === x.star) {\n var s = this.startNode();\n return this.next(), this.expectContextual(\"as\"), s.local = this.parseIdent(), this.checkLVal(s.local, 2), t.push(this.finishNode(s, \"ImportNamespaceSpecifier\")), t;\n }\n\n for (this.expect(x.braceL); !this.eat(x.braceR);) {\n if (e) e = !1;else if (this.expect(x.comma), this.afterTrailingComma(x.braceR)) break;\n var r = this.startNode();\n r.imported = this.parseIdent(!0), this.eatContextual(\"as\") ? r.local = this.parseIdent() : (this.checkUnreserved(r.imported), r.local = r.imported), this.checkLVal(r.local, 2), t.push(this.finishNode(r, \"ImportSpecifier\"));\n }\n\n return t;\n}, W.adaptDirectivePrologue = function (t) {\n for (var e = 0; e < t.length && this.isDirectiveCandidate(t[e]); ++e) {\n t[e].directive = t[e].expression.raw.slice(1, -1);\n }\n}, W.isDirectiveCandidate = function (t) {\n return \"ExpressionStatement\" === t.type && \"Literal\" === t.expression.type && \"string\" == typeof t.expression.value && ('\"' === this.input[t.start] || \"'\" === this.input[t.start]);\n};\nvar $ = M.prototype;\n$.toAssignable = function (t, e, i) {\n if (this.options.ecmaVersion >= 6 && t) switch (t.type) {\n case \"Identifier\":\n this.inAsync && \"await\" === t.name && this.raise(t.start, \"Cannot use 'await' as identifier inside an async function\");\n break;\n\n case \"ObjectPattern\":\n case \"ArrayPattern\":\n case \"RestElement\":\n break;\n\n case \"ObjectExpression\":\n t.type = \"ObjectPattern\", i && this.checkPatternErrors(i, !0);\n\n for (var s = 0, r = t.properties; s < r.length; s += 1) {\n var n = r[s];\n this.toAssignable(n, e), \"RestElement\" !== n.type || \"ArrayPattern\" !== n.argument.type && \"ObjectPattern\" !== n.argument.type || this.raise(n.argument.start, \"Unexpected token\");\n }\n\n break;\n\n case \"Property\":\n \"init\" !== t.kind && this.raise(t.key.start, \"Object pattern can't contain getter or setter\"), this.toAssignable(t.value, e);\n break;\n\n case \"ArrayExpression\":\n t.type = \"ArrayPattern\", i && this.checkPatternErrors(i, !0), this.toAssignableList(t.elements, e);\n break;\n\n case \"SpreadElement\":\n t.type = \"RestElement\", this.toAssignable(t.argument, e), \"AssignmentPattern\" === t.argument.type && this.raise(t.argument.start, \"Rest elements cannot have a default value\");\n break;\n\n case \"AssignmentExpression\":\n \"=\" !== t.operator && this.raise(t.left.end, \"Only '=' operator can be used for specifying default value.\"), t.type = \"AssignmentPattern\", delete t.operator, this.toAssignable(t.left, e);\n\n case \"AssignmentPattern\":\n break;\n\n case \"ParenthesizedExpression\":\n this.toAssignable(t.expression, e, i);\n break;\n\n case \"MemberExpression\":\n if (!e) break;\n\n default:\n this.raise(t.start, \"Assigning to rvalue\");\n } else i && this.checkPatternErrors(i, !0);\n return t;\n}, $.toAssignableList = function (t, e) {\n for (var i = t.length, s = 0; s < i; s++) {\n var r = t[s];\n r && this.toAssignable(r, e);\n }\n\n if (i) {\n var n = t[i - 1];\n 6 === this.options.ecmaVersion && e && n && \"RestElement\" === n.type && \"Identifier\" !== n.argument.type && this.unexpected(n.argument.start);\n }\n\n return t;\n}, $.parseSpread = function (t) {\n var e = this.startNode();\n return this.next(), e.argument = this.parseMaybeAssign(!1, t), this.finishNode(e, \"SpreadElement\");\n}, $.parseRestBinding = function () {\n var t = this.startNode();\n return this.next(), 6 === this.options.ecmaVersion && this.type !== x.name && this.unexpected(), t.argument = this.parseBindingAtom(), this.finishNode(t, \"RestElement\");\n}, $.parseBindingAtom = function () {\n if (this.options.ecmaVersion >= 6) switch (this.type) {\n case x.bracketL:\n var t = this.startNode();\n return this.next(), t.elements = this.parseBindingList(x.bracketR, !0, !0), this.finishNode(t, \"ArrayPattern\");\n\n case x.braceL:\n return this.parseObj(!0);\n }\n return this.parseIdent();\n}, $.parseBindingList = function (t, e, i) {\n for (var s = [], r = !0; !this.eat(t);) {\n if (r ? r = !1 : this.expect(x.comma), e && this.type === x.comma) s.push(null);else {\n if (i && this.afterTrailingComma(t)) break;\n\n if (this.type === x.ellipsis) {\n var n = this.parseRestBinding();\n this.parseBindingListItem(n), s.push(n), this.type === x.comma && this.raise(this.start, \"Comma is not permitted after the rest element\"), this.expect(t);\n break;\n }\n\n var a = this.parseMaybeDefault(this.start, this.startLoc);\n this.parseBindingListItem(a), s.push(a);\n }\n }\n\n return s;\n}, $.parseBindingListItem = function (t) {\n return t;\n}, $.parseMaybeDefault = function (t, e, i) {\n if (i = i || this.parseBindingAtom(), this.options.ecmaVersion < 6 || !this.eat(x.eq)) return i;\n var s = this.startNodeAt(t, e);\n return s.left = i, s.right = this.parseMaybeAssign(), this.finishNode(s, \"AssignmentPattern\");\n}, $.checkLVal = function (t, e, i) {\n switch (void 0 === e && (e = 0), t.type) {\n case \"Identifier\":\n this.strict && this.reservedWordsStrictBind.test(t.name) && this.raiseRecoverable(t.start, (e ? \"Binding \" : \"Assigning to \") + t.name + \" in strict mode\"), i && (I(i, t.name) && this.raiseRecoverable(t.start, \"Argument name clash\"), i[t.name] = !0), 0 !== e && 5 !== e && this.declareName(t.name, e, t.start);\n break;\n\n case \"MemberExpression\":\n e && this.raiseRecoverable(t.start, \"Binding member expression\");\n break;\n\n case \"ObjectPattern\":\n for (var s = 0, r = t.properties; s < r.length; s += 1) {\n this.checkLVal(r[s], e, i);\n }\n\n break;\n\n case \"Property\":\n this.checkLVal(t.value, e, i);\n break;\n\n case \"ArrayPattern\":\n for (var n = 0, a = t.elements; n < a.length; n += 1) {\n var o = a[n];\n o && this.checkLVal(o, e, i);\n }\n\n break;\n\n case \"AssignmentPattern\":\n this.checkLVal(t.left, e, i);\n break;\n\n case \"RestElement\":\n this.checkLVal(t.argument, e, i);\n break;\n\n case \"ParenthesizedExpression\":\n this.checkLVal(t.expression, e, i);\n break;\n\n default:\n this.raise(t.start, (e ? \"Binding\" : \"Assigning to\") + \" rvalue\");\n }\n};\nvar Y = M.prototype;\nY.checkPropClash = function (t, e, i) {\n if (!(this.options.ecmaVersion >= 9 && \"SpreadElement\" === t.type || this.options.ecmaVersion >= 6 && (t.computed || t.method || t.shorthand))) {\n var s,\n r = t.key;\n\n switch (r.type) {\n case \"Identifier\":\n s = r.name;\n break;\n\n case \"Literal\":\n s = String(r.value);\n break;\n\n default:\n return;\n }\n\n var n = t.kind;\n if (this.options.ecmaVersion >= 6) \"__proto__\" === s && \"init\" === n && (e.proto && (i && i.doubleProto < 0 ? i.doubleProto = r.start : this.raiseRecoverable(r.start, \"Redefinition of __proto__ property\")), e.proto = !0);else {\n var a = e[s = \"$\" + s];\n a ? (\"init\" === n ? this.strict && a.init || a.get || a.set : a.init || a[n]) && this.raiseRecoverable(r.start, \"Redefinition of property\") : a = e[s] = {\n init: !1,\n get: !1,\n set: !1\n }, a[n] = !0;\n }\n }\n}, Y.parseExpression = function (t, e) {\n var i = this.start,\n s = this.startLoc,\n r = this.parseMaybeAssign(t, e);\n\n if (this.type === x.comma) {\n var n = this.startNodeAt(i, s);\n\n for (n.expressions = [r]; this.eat(x.comma);) {\n n.expressions.push(this.parseMaybeAssign(t, e));\n }\n\n return this.finishNode(n, \"SequenceExpression\");\n }\n\n return r;\n}, Y.parseMaybeAssign = function (t, e, i) {\n if (this.isContextual(\"yield\")) {\n if (this.inGenerator) return this.parseYield(t);\n this.exprAllowed = !1;\n }\n\n var s = !1,\n r = -1,\n n = -1,\n a = -1;\n e ? (r = e.parenthesizedAssign, n = e.trailingComma, a = e.shorthandAssign, e.parenthesizedAssign = e.trailingComma = e.shorthandAssign = -1) : (e = new J(), s = !0);\n var o = this.start,\n p = this.startLoc;\n this.type !== x.parenL && this.type !== x.name || (this.potentialArrowAt = this.start);\n var h = this.parseMaybeConditional(t, e);\n\n if (i && (h = i.call(this, h, o, p)), this.type.isAssign) {\n var c = this.startNodeAt(o, p);\n return c.operator = this.value, c.left = this.type === x.eq ? this.toAssignable(h, !1, e) : h, s || J.call(e), e.shorthandAssign = -1, this.checkLVal(h), this.next(), c.right = this.parseMaybeAssign(t), this.finishNode(c, \"AssignmentExpression\");\n }\n\n return s && this.checkExpressionErrors(e, !0), r > -1 && (e.parenthesizedAssign = r), n > -1 && (e.trailingComma = n), a > -1 && (e.shorthandAssign = a), h;\n}, Y.parseMaybeConditional = function (t, e) {\n var i = this.start,\n s = this.startLoc,\n r = this.parseExprOps(t, e);\n if (this.checkExpressionErrors(e)) return r;\n\n if (this.eat(x.question)) {\n var n = this.startNodeAt(i, s);\n return n.test = r, n.consequent = this.parseMaybeAssign(), this.expect(x.colon), n.alternate = this.parseMaybeAssign(t), this.finishNode(n, \"ConditionalExpression\");\n }\n\n return r;\n}, Y.parseExprOps = function (t, e) {\n var i = this.start,\n s = this.startLoc,\n r = this.parseMaybeUnary(e, !1);\n return this.checkExpressionErrors(e) ? r : r.start === i && \"ArrowFunctionExpression\" === r.type ? r : this.parseExprOp(r, i, s, -1, t);\n}, Y.parseExprOp = function (t, e, i, s, r) {\n var n = this.type.binop;\n\n if (null != n && (!r || this.type !== x._in) && n > s) {\n var a = this.type === x.logicalOR || this.type === x.logicalAND,\n o = this.value;\n this.next();\n var p = this.start,\n h = this.startLoc,\n c = this.parseExprOp(this.parseMaybeUnary(null, !1), p, h, n, r),\n l = this.buildBinary(e, i, t, c, o, a);\n return this.parseExprOp(l, e, i, s, r);\n }\n\n return t;\n}, Y.buildBinary = function (t, e, i, s, r, n) {\n var a = this.startNodeAt(t, e);\n return a.left = i, a.operator = r, a.right = s, this.finishNode(a, n ? \"LogicalExpression\" : \"BinaryExpression\");\n}, Y.parseMaybeUnary = function (t, e) {\n var i,\n s = this.start,\n r = this.startLoc;\n if (this.isContextual(\"await\") && (this.inAsync || !this.inFunction && this.options.allowAwaitOutsideFunction)) i = this.parseAwait(), e = !0;else if (this.type.prefix) {\n var n = this.startNode(),\n a = this.type === x.incDec;\n n.operator = this.value, n.prefix = !0, this.next(), n.argument = this.parseMaybeUnary(null, !0), this.checkExpressionErrors(t, !0), a ? this.checkLVal(n.argument) : this.strict && \"delete\" === n.operator && \"Identifier\" === n.argument.type ? this.raiseRecoverable(n.start, \"Deleting local variable in strict mode\") : e = !0, i = this.finishNode(n, a ? \"UpdateExpression\" : \"UnaryExpression\");\n } else {\n if (i = this.parseExprSubscripts(t), this.checkExpressionErrors(t)) return i;\n\n for (; this.type.postfix && !this.canInsertSemicolon();) {\n var o = this.startNodeAt(s, r);\n o.operator = this.value, o.prefix = !1, o.argument = i, this.checkLVal(i), this.next(), i = this.finishNode(o, \"UpdateExpression\");\n }\n }\n return !e && this.eat(x.starstar) ? this.buildBinary(s, r, i, this.parseMaybeUnary(null, !1), \"**\", !1) : i;\n}, Y.parseExprSubscripts = function (t) {\n var e = this.start,\n i = this.startLoc,\n s = this.parseExprAtom(t),\n r = \"ArrowFunctionExpression\" === s.type && \")\" !== this.input.slice(this.lastTokStart, this.lastTokEnd);\n if (this.checkExpressionErrors(t) || r) return s;\n var n = this.parseSubscripts(s, e, i);\n return t && \"MemberExpression\" === n.type && (t.parenthesizedAssign >= n.start && (t.parenthesizedAssign = -1), t.parenthesizedBind >= n.start && (t.parenthesizedBind = -1)), n;\n}, Y.parseSubscripts = function (t, e, i, s) {\n for (var r = this.options.ecmaVersion >= 8 && \"Identifier\" === t.type && \"async\" === t.name && this.lastTokEnd === t.end && !this.canInsertSemicolon() && \"async\" === this.input.slice(t.start, t.end);;) {\n var n = this.parseSubscript(t, e, i, s, r);\n if (n === t || \"ArrowFunctionExpression\" === n.type) return n;\n t = n;\n }\n}, Y.parseSubscript = function (t, e, i, s, r) {\n var n = this.eat(x.bracketL);\n\n if (n || this.eat(x.dot)) {\n var a = this.startNodeAt(e, i);\n a.object = t, a.property = n ? this.parseExpression() : this.parseIdent(!0), a.computed = !!n, n && this.expect(x.bracketR), t = this.finishNode(a, \"MemberExpression\");\n } else if (!s && this.eat(x.parenL)) {\n var o = new J(),\n p = this.yieldPos,\n h = this.awaitPos,\n c = this.awaitIdentPos;\n this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0;\n var l = this.parseExprList(x.parenR, this.options.ecmaVersion >= 8, !1, o);\n if (r && !this.canInsertSemicolon() && this.eat(x.arrow)) return this.checkPatternErrors(o, !1), this.checkYieldAwaitInDefaultParams(), this.awaitIdentPos > 0 && this.raise(this.awaitIdentPos, \"Cannot use 'await' as identifier inside an async function\"), this.yieldPos = p, this.awaitPos = h, this.awaitIdentPos = c, this.parseArrowExpression(this.startNodeAt(e, i), l, !0);\n this.checkExpressionErrors(o, !0), this.yieldPos = p || this.yieldPos, this.awaitPos = h || this.awaitPos, this.awaitIdentPos = c || this.awaitIdentPos;\n var u = this.startNodeAt(e, i);\n u.callee = t, u.arguments = l, t = this.finishNode(u, \"CallExpression\");\n } else if (this.type === x.backQuote) {\n var d = this.startNodeAt(e, i);\n d.tag = t, d.quasi = this.parseTemplate({\n isTagged: !0\n }), t = this.finishNode(d, \"TaggedTemplateExpression\");\n }\n\n return t;\n}, Y.parseExprAtom = function (t) {\n this.type === x.slash && this.readRegexp();\n var e,\n i = this.potentialArrowAt === this.start;\n\n switch (this.type) {\n case x._super:\n return this.allowSuper || this.raise(this.start, \"'super' keyword outside a method\"), e = this.startNode(), this.next(), this.type !== x.parenL || this.allowDirectSuper || this.raise(e.start, \"super() call outside constructor of a subclass\"), this.type !== x.dot && this.type !== x.bracketL && this.type !== x.parenL && this.unexpected(), this.finishNode(e, \"Super\");\n\n case x._this:\n return e = this.startNode(), this.next(), this.finishNode(e, \"ThisExpression\");\n\n case x.name:\n var s = this.start,\n r = this.startLoc,\n n = this.containsEsc,\n a = this.parseIdent(!1);\n if (this.options.ecmaVersion >= 8 && !n && \"async\" === a.name && !this.canInsertSemicolon() && this.eat(x._function)) return this.parseFunction(this.startNodeAt(s, r), 0, !1, !0);\n\n if (i && !this.canInsertSemicolon()) {\n if (this.eat(x.arrow)) return this.parseArrowExpression(this.startNodeAt(s, r), [a], !1);\n if (this.options.ecmaVersion >= 8 && \"async\" === a.name && this.type === x.name && !n) return a = this.parseIdent(!1), !this.canInsertSemicolon() && this.eat(x.arrow) || this.unexpected(), this.parseArrowExpression(this.startNodeAt(s, r), [a], !0);\n }\n\n return a;\n\n case x.regexp:\n var o = this.value;\n return (e = this.parseLiteral(o.value)).regex = {\n pattern: o.pattern,\n flags: o.flags\n }, e;\n\n case x.num:\n case x.string:\n return this.parseLiteral(this.value);\n\n case x._null:\n case x._true:\n case x._false:\n return (e = this.startNode()).value = this.type === x._null ? null : this.type === x._true, e.raw = this.type.keyword, this.next(), this.finishNode(e, \"Literal\");\n\n case x.parenL:\n var p = this.start,\n h = this.parseParenAndDistinguishExpression(i);\n return t && (t.parenthesizedAssign < 0 && !this.isSimpleAssignTarget(h) && (t.parenthesizedAssign = p), t.parenthesizedBind < 0 && (t.parenthesizedBind = p)), h;\n\n case x.bracketL:\n return e = this.startNode(), this.next(), e.elements = this.parseExprList(x.bracketR, !0, !0, t), this.finishNode(e, \"ArrayExpression\");\n\n case x.braceL:\n return this.parseObj(!1, t);\n\n case x._function:\n return e = this.startNode(), this.next(), this.parseFunction(e, 0);\n\n case x._class:\n return this.parseClass(this.startNode(), !1);\n\n case x._new:\n return this.parseNew();\n\n case x.backQuote:\n return this.parseTemplate();\n\n default:\n this.unexpected();\n }\n}, Y.parseLiteral = function (t) {\n var e = this.startNode();\n return e.value = t, e.raw = this.input.slice(this.start, this.end), this.next(), this.finishNode(e, \"Literal\");\n}, Y.parseParenExpression = function () {\n this.expect(x.parenL);\n var t = this.parseExpression();\n return this.expect(x.parenR), t;\n}, Y.parseParenAndDistinguishExpression = function (t) {\n var e,\n i = this.start,\n s = this.startLoc,\n r = this.options.ecmaVersion >= 8;\n\n if (this.options.ecmaVersion >= 6) {\n this.next();\n var n,\n a = this.start,\n o = this.startLoc,\n p = [],\n h = !0,\n c = !1,\n l = new J(),\n u = this.yieldPos,\n d = this.awaitPos;\n\n for (this.yieldPos = 0, this.awaitPos = 0; this.type !== x.parenR;) {\n if (h ? h = !1 : this.expect(x.comma), r && this.afterTrailingComma(x.parenR, !0)) {\n c = !0;\n break;\n }\n\n if (this.type === x.ellipsis) {\n n = this.start, p.push(this.parseParenItem(this.parseRestBinding())), this.type === x.comma && this.raise(this.start, \"Comma is not permitted after the rest element\");\n break;\n }\n\n p.push(this.parseMaybeAssign(!1, l, this.parseParenItem));\n }\n\n var f = this.start,\n m = this.startLoc;\n if (this.expect(x.parenR), t && !this.canInsertSemicolon() && this.eat(x.arrow)) return this.checkPatternErrors(l, !1), this.checkYieldAwaitInDefaultParams(), this.yieldPos = u, this.awaitPos = d, this.parseParenArrowList(i, s, p);\n p.length && !c || this.unexpected(this.lastTokStart), n && this.unexpected(n), this.checkExpressionErrors(l, !0), this.yieldPos = u || this.yieldPos, this.awaitPos = d || this.awaitPos, p.length > 1 ? ((e = this.startNodeAt(a, o)).expressions = p, this.finishNodeAt(e, \"SequenceExpression\", f, m)) : e = p[0];\n } else e = this.parseParenExpression();\n\n if (this.options.preserveParens) {\n var g = this.startNodeAt(i, s);\n return g.expression = e, this.finishNode(g, \"ParenthesizedExpression\");\n }\n\n return e;\n}, Y.parseParenItem = function (t) {\n return t;\n}, Y.parseParenArrowList = function (t, e, i) {\n return this.parseArrowExpression(this.startNodeAt(t, e), i);\n};\nvar Z = [];\nY.parseNew = function () {\n var t = this.startNode(),\n e = this.parseIdent(!0);\n\n if (this.options.ecmaVersion >= 6 && this.eat(x.dot)) {\n t.meta = e;\n var i = this.containsEsc;\n return t.property = this.parseIdent(!0), (\"target\" !== t.property.name || i) && this.raiseRecoverable(t.property.start, \"The only valid meta property for new is new.target\"), this.inNonArrowFunction() || this.raiseRecoverable(t.start, \"new.target can only be used in functions\"), this.finishNode(t, \"MetaProperty\");\n }\n\n var s = this.start,\n r = this.startLoc;\n return t.callee = this.parseSubscripts(this.parseExprAtom(), s, r, !0), t.arguments = this.eat(x.parenL) ? this.parseExprList(x.parenR, this.options.ecmaVersion >= 8, !1) : Z, this.finishNode(t, \"NewExpression\");\n}, Y.parseTemplateElement = function (t) {\n var e = t.isTagged,\n i = this.startNode();\n return this.type === x.invalidTemplate ? (e || this.raiseRecoverable(this.start, \"Bad escape sequence in untagged template literal\"), i.value = {\n raw: this.value,\n cooked: null\n }) : i.value = {\n raw: this.input.slice(this.start, this.end).replace(/\\r\\n?/g, \"\\n\"),\n cooked: this.value\n }, this.next(), i.tail = this.type === x.backQuote, this.finishNode(i, \"TemplateElement\");\n}, Y.parseTemplate = function (t) {\n void 0 === t && (t = {});\n var e = t.isTagged;\n void 0 === e && (e = !1);\n var i = this.startNode();\n this.next(), i.expressions = [];\n var s = this.parseTemplateElement({\n isTagged: e\n });\n\n for (i.quasis = [s]; !s.tail;) {\n this.type === x.eof && this.raise(this.pos, \"Unterminated template literal\"), this.expect(x.dollarBraceL), i.expressions.push(this.parseExpression()), this.expect(x.braceR), i.quasis.push(s = this.parseTemplateElement({\n isTagged: e\n }));\n }\n\n return this.next(), this.finishNode(i, \"TemplateLiteral\");\n}, Y.isAsyncProp = function (t) {\n return !t.computed && \"Identifier\" === t.key.type && \"async\" === t.key.name && (this.type === x.name || this.type === x.num || this.type === x.string || this.type === x.bracketL || this.type.keyword || this.options.ecmaVersion >= 9 && this.type === x.star) && !b.test(this.input.slice(this.lastTokEnd, this.start));\n}, Y.parseObj = function (t, e) {\n var i = this.startNode(),\n s = !0,\n r = {};\n\n for (i.properties = [], this.next(); !this.eat(x.braceR);) {\n if (s) s = !1;else if (this.expect(x.comma), this.afterTrailingComma(x.braceR)) break;\n var n = this.parseProperty(t, e);\n t || this.checkPropClash(n, r, e), i.properties.push(n);\n }\n\n return this.finishNode(i, t ? \"ObjectPattern\" : \"ObjectExpression\");\n}, Y.parseProperty = function (t, e) {\n var i,\n s,\n r,\n n,\n a = this.startNode();\n if (this.options.ecmaVersion >= 9 && this.eat(x.ellipsis)) return t ? (a.argument = this.parseIdent(!1), this.type === x.comma && this.raise(this.start, \"Comma is not permitted after the rest element\"), this.finishNode(a, \"RestElement\")) : (this.type === x.parenL && e && (e.parenthesizedAssign < 0 && (e.parenthesizedAssign = this.start), e.parenthesizedBind < 0 && (e.parenthesizedBind = this.start)), a.argument = this.parseMaybeAssign(!1, e), this.type === x.comma && e && e.trailingComma < 0 && (e.trailingComma = this.start), this.finishNode(a, \"SpreadElement\"));\n this.options.ecmaVersion >= 6 && (a.method = !1, a.shorthand = !1, (t || e) && (r = this.start, n = this.startLoc), t || (i = this.eat(x.star)));\n var o = this.containsEsc;\n return this.parsePropertyName(a), !t && !o && this.options.ecmaVersion >= 8 && !i && this.isAsyncProp(a) ? (s = !0, i = this.options.ecmaVersion >= 9 && this.eat(x.star), this.parsePropertyName(a, e)) : s = !1, this.parsePropertyValue(a, t, i, s, r, n, e, o), this.finishNode(a, \"Property\");\n}, Y.parsePropertyValue = function (t, e, i, s, r, n, a, o) {\n (i || s) && this.type === x.colon && this.unexpected(), this.eat(x.colon) ? (t.value = e ? this.parseMaybeDefault(this.start, this.startLoc) : this.parseMaybeAssign(!1, a), t.kind = \"init\") : this.options.ecmaVersion >= 6 && this.type === x.parenL ? (e && this.unexpected(), t.kind = \"init\", t.method = !0, t.value = this.parseMethod(i, s)) : e || o || !(this.options.ecmaVersion >= 5) || t.computed || \"Identifier\" !== t.key.type || \"get\" !== t.key.name && \"set\" !== t.key.name || this.type === x.comma || this.type === x.braceR ? this.options.ecmaVersion >= 6 && !t.computed && \"Identifier\" === t.key.type ? ((i || s) && this.unexpected(), this.checkUnreserved(t.key), \"await\" !== t.key.name || this.awaitIdentPos || (this.awaitIdentPos = r), t.kind = \"init\", e ? t.value = this.parseMaybeDefault(r, n, t.key) : this.type === x.eq && a ? (a.shorthandAssign < 0 && (a.shorthandAssign = this.start), t.value = this.parseMaybeDefault(r, n, t.key)) : t.value = t.key, t.shorthand = !0) : this.unexpected() : ((i || s) && this.unexpected(), t.kind = t.key.name, this.parsePropertyName(t), t.value = this.parseMethod(!1), t.value.params.length !== (\"get\" === t.kind ? 0 : 1) ? this.raiseRecoverable(t.value.start, \"get\" === t.kind ? \"getter should have no params\" : \"setter should have exactly one param\") : \"set\" === t.kind && \"RestElement\" === t.value.params[0].type && this.raiseRecoverable(t.value.params[0].start, \"Setter cannot use rest params\"));\n}, Y.parsePropertyName = function (t) {\n if (this.options.ecmaVersion >= 6) {\n if (this.eat(x.bracketL)) return t.computed = !0, t.key = this.parseMaybeAssign(), this.expect(x.bracketR), t.key;\n t.computed = !1;\n }\n\n return t.key = this.type === x.num || this.type === x.string ? this.parseExprAtom() : this.parseIdent(!0);\n}, Y.initFunction = function (t) {\n t.id = null, this.options.ecmaVersion >= 6 && (t.generator = t.expression = !1), this.options.ecmaVersion >= 8 && (t.async = !1);\n}, Y.parseMethod = function (t, e, i) {\n var s = this.startNode(),\n r = this.yieldPos,\n n = this.awaitPos,\n a = this.awaitIdentPos;\n return this.initFunction(s), this.options.ecmaVersion >= 6 && (s.generator = t), this.options.ecmaVersion >= 8 && (s.async = !!e), this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(64 | F(e, s.generator) | (i ? 128 : 0)), this.expect(x.parenL), s.params = this.parseBindingList(x.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams(), this.parseFunctionBody(s, !1, !0), this.yieldPos = r, this.awaitPos = n, this.awaitIdentPos = a, this.finishNode(s, \"FunctionExpression\");\n}, Y.parseArrowExpression = function (t, e, i) {\n var s = this.yieldPos,\n r = this.awaitPos,\n n = this.awaitIdentPos;\n return this.enterScope(16 | F(i, !1)), this.initFunction(t), this.options.ecmaVersion >= 8 && (t.async = !!i), this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, t.params = this.toAssignableList(e, !0), this.parseFunctionBody(t, !0, !1), this.yieldPos = s, this.awaitPos = r, this.awaitIdentPos = n, this.finishNode(t, \"ArrowFunctionExpression\");\n}, Y.parseFunctionBody = function (t, e, i) {\n var s = this.strict,\n r = !1;\n if (e && this.type !== x.braceL) t.body = this.parseMaybeAssign(), t.expression = !0, this.checkParams(t, !1);else {\n var n = this.options.ecmaVersion >= 7 && !this.isSimpleParamList(t.params);\n s && !n || (r = this.strictDirective(this.end)) && n && this.raiseRecoverable(t.start, \"Illegal 'use strict' directive in function with non-simple parameter list\");\n var a = this.labels;\n this.labels = [], r && (this.strict = !0), this.checkParams(t, !s && !r && !e && !i && this.isSimpleParamList(t.params)), t.body = this.parseBlock(!1), t.expression = !1, this.adaptDirectivePrologue(t.body.body), this.labels = a;\n }\n this.exitScope(), this.strict && t.id && this.checkLVal(t.id, 5), this.strict = s;\n}, Y.isSimpleParamList = function (t) {\n for (var e = 0, i = t; e < i.length; e += 1) {\n if (\"Identifier\" !== i[e].type) return !1;\n }\n\n return !0;\n}, Y.checkParams = function (t, e) {\n for (var i = {}, s = 0, r = t.params; s < r.length; s += 1) {\n this.checkLVal(r[s], 1, e ? null : i);\n }\n}, Y.parseExprList = function (t, e, i, s) {\n for (var r = [], n = !0; !this.eat(t);) {\n if (n) n = !1;else if (this.expect(x.comma), e && this.afterTrailingComma(t)) break;\n var a = void 0;\n i && this.type === x.comma ? a = null : this.type === x.ellipsis ? (a = this.parseSpread(s), s && this.type === x.comma && s.trailingComma < 0 && (s.trailingComma = this.start)) : a = this.parseMaybeAssign(!1, s), r.push(a);\n }\n\n return r;\n}, Y.checkUnreserved = function (t) {\n var e = t.start,\n i = t.end,\n s = t.name;\n this.inGenerator && \"yield\" === s && this.raiseRecoverable(e, \"Cannot use 'yield' as identifier inside a generator\"), this.inAsync && \"await\" === s && this.raiseRecoverable(e, \"Cannot use 'await' as identifier inside an async function\"), this.keywords.test(s) && this.raise(e, \"Unexpected keyword '\" + s + \"'\"), this.options.ecmaVersion < 6 && -1 !== this.input.slice(e, i).indexOf(\"\\\\\") || (this.strict ? this.reservedWordsStrict : this.reservedWords).test(s) && (this.inAsync || \"await\" !== s || this.raiseRecoverable(e, \"Cannot use keyword 'await' outside an async function\"), this.raiseRecoverable(e, \"The keyword '\" + s + \"' is reserved\"));\n}, Y.parseIdent = function (t, e) {\n var i = this.startNode();\n return t && \"never\" === this.options.allowReserved && (t = !1), this.type === x.name ? i.name = this.value : this.type.keyword ? (i.name = this.type.keyword, \"class\" !== i.name && \"function\" !== i.name || this.lastTokEnd === this.lastTokStart + 1 && 46 === this.input.charCodeAt(this.lastTokStart) || this.context.pop()) : this.unexpected(), this.next(), this.finishNode(i, \"Identifier\"), t || (this.checkUnreserved(i), \"await\" !== i.name || this.awaitIdentPos || (this.awaitIdentPos = i.start)), i;\n}, Y.parseYield = function (t) {\n this.yieldPos || (this.yieldPos = this.start);\n var e = this.startNode();\n return this.next(), this.type === x.semi || this.canInsertSemicolon() || this.type !== x.star && !this.type.startsExpr ? (e.delegate = !1, e.argument = null) : (e.delegate = this.eat(x.star), e.argument = this.parseMaybeAssign(t)), this.finishNode(e, \"YieldExpression\");\n}, Y.parseAwait = function () {\n this.awaitPos || (this.awaitPos = this.start);\n var t = this.startNode();\n return this.next(), t.argument = this.parseMaybeUnary(null, !0), this.finishNode(t, \"AwaitExpression\");\n};\nvar tt = M.prototype;\ntt.raise = function (t, e) {\n var i = R(this.input, t),\n s = new SyntaxError(e += \" (\" + i.line + \":\" + i.column + \")\");\n throw s.pos = t, s.loc = i, s.raisedAt = this.pos, s;\n}, tt.raiseRecoverable = tt.raise, tt.curPosition = function () {\n if (this.options.locations) return new P(this.curLine, this.pos - this.lineStart);\n};\n\nvar et = M.prototype,\n it = function it(t) {\n this.flags = t, this.var = [], this.lexical = [], this.functions = [];\n};\n\net.enterScope = function (t) {\n this.scopeStack.push(new it(t));\n}, et.exitScope = function () {\n this.scopeStack.pop();\n}, et.treatFunctionsAsVarInScope = function (t) {\n return t.flags & j || !this.inModule && 1 & t.flags;\n}, et.declareName = function (t, e, i) {\n var s = !1;\n\n if (2 === e) {\n var r = this.currentScope();\n s = r.lexical.indexOf(t) > -1 || r.functions.indexOf(t) > -1 || r.var.indexOf(t) > -1, r.lexical.push(t), this.inModule && 1 & r.flags && delete this.undefinedExports[t];\n } else if (4 === e) this.currentScope().lexical.push(t);else if (3 === e) {\n var n = this.currentScope();\n s = this.treatFunctionsAsVar ? n.lexical.indexOf(t) > -1 : n.lexical.indexOf(t) > -1 || n.var.indexOf(t) > -1, n.functions.push(t);\n } else for (var a = this.scopeStack.length - 1; a >= 0; --a) {\n var o = this.scopeStack[a];\n\n if (o.lexical.indexOf(t) > -1 && !(32 & o.flags && o.lexical[0] === t) || !this.treatFunctionsAsVarInScope(o) && o.functions.indexOf(t) > -1) {\n s = !0;\n break;\n }\n\n if (o.var.push(t), this.inModule && 1 & o.flags && delete this.undefinedExports[t], o.flags & V) break;\n }\n\n s && this.raiseRecoverable(i, \"Identifier '\" + t + \"' has already been declared\");\n}, et.checkLocalExport = function (t) {\n -1 === this.scopeStack[0].lexical.indexOf(t.name) && -1 === this.scopeStack[0].var.indexOf(t.name) && (this.undefinedExports[t.name] = t);\n}, et.currentScope = function () {\n return this.scopeStack[this.scopeStack.length - 1];\n}, et.currentVarScope = function () {\n for (var t = this.scopeStack.length - 1;; t--) {\n var e = this.scopeStack[t];\n if (e.flags & V) return e;\n }\n}, et.currentThisScope = function () {\n for (var t = this.scopeStack.length - 1;; t--) {\n var e = this.scopeStack[t];\n if (e.flags & V && !(16 & e.flags)) return e;\n }\n};\n\nvar st = function st(t, e, i) {\n this.type = \"\", this.start = e, this.end = 0, t.options.locations && (this.loc = new T(t, i)), t.options.directSourceFile && (this.sourceFile = t.options.directSourceFile), t.options.ranges && (this.range = [e, 0]);\n},\n rt = M.prototype;\n\nfunction nt(t, e, i, s) {\n return t.type = e, t.end = i, this.options.locations && (t.loc.end = s), this.options.ranges && (t.range[1] = i), t;\n}\n\nrt.startNode = function () {\n return new st(this, this.start, this.startLoc);\n}, rt.startNodeAt = function (t, e) {\n return new st(this, t, e);\n}, rt.finishNode = function (t, e) {\n return nt.call(this, t, e, this.lastTokEnd, this.lastTokEndLoc);\n}, rt.finishNodeAt = function (t, e, i, s) {\n return nt.call(this, t, e, i, s);\n};\n\nvar at = function at(t, e, i, s, r) {\n this.token = t, this.isExpr = !!e, this.preserveSpace = !!i, this.override = s, this.generator = !!r;\n},\n ot = {\n b_stat: new at(\"{\", !1),\n b_expr: new at(\"{\", !0),\n b_tmpl: new at(\"${\", !1),\n p_stat: new at(\"(\", !1),\n p_expr: new at(\"(\", !0),\n q_tmpl: new at(\"`\", !0, !0, function (t) {\n return t.tryReadTemplateToken();\n }),\n f_stat: new at(\"function\", !1),\n f_expr: new at(\"function\", !0),\n f_expr_gen: new at(\"function\", !0, !1, null, !0),\n f_gen: new at(\"function\", !1, !1, null, !0)\n},\n pt = M.prototype;\n\npt.initialContext = function () {\n return [ot.b_stat];\n}, pt.braceIsBlock = function (t) {\n var e = this.curContext();\n return e === ot.f_expr || e === ot.f_stat || (t !== x.colon || e !== ot.b_stat && e !== ot.b_expr ? t === x._return || t === x.name && this.exprAllowed ? b.test(this.input.slice(this.lastTokEnd, this.start)) : t === x._else || t === x.semi || t === x.eof || t === x.parenR || t === x.arrow || (t === x.braceL ? e === ot.b_stat : t !== x._var && t !== x._const && t !== x.name && !this.exprAllowed) : !e.isExpr);\n}, pt.inGeneratorContext = function () {\n for (var t = this.context.length - 1; t >= 1; t--) {\n var e = this.context[t];\n if (\"function\" === e.token) return e.generator;\n }\n\n return !1;\n}, pt.updateContext = function (t) {\n var e,\n i = this.type;\n i.keyword && t === x.dot ? this.exprAllowed = !1 : (e = i.updateContext) ? e.call(this, t) : this.exprAllowed = i.beforeExpr;\n}, x.parenR.updateContext = x.braceR.updateContext = function () {\n if (1 !== this.context.length) {\n var t = this.context.pop();\n t === ot.b_stat && \"function\" === this.curContext().token && (t = this.context.pop()), this.exprAllowed = !t.isExpr;\n } else this.exprAllowed = !0;\n}, x.braceL.updateContext = function (t) {\n this.context.push(this.braceIsBlock(t) ? ot.b_stat : ot.b_expr), this.exprAllowed = !0;\n}, x.dollarBraceL.updateContext = function () {\n this.context.push(ot.b_tmpl), this.exprAllowed = !0;\n}, x.parenL.updateContext = function (t) {\n this.context.push(t === x._if || t === x._for || t === x._with || t === x._while ? ot.p_stat : ot.p_expr), this.exprAllowed = !0;\n}, x.incDec.updateContext = function () {}, x._function.updateContext = x._class.updateContext = function (t) {\n !t.beforeExpr || t === x.semi || t === x._else || t === x._return && b.test(this.input.slice(this.lastTokEnd, this.start)) || (t === x.colon || t === x.braceL) && this.curContext() === ot.b_stat ? this.context.push(ot.f_stat) : this.context.push(ot.f_expr), this.exprAllowed = !1;\n}, x.backQuote.updateContext = function () {\n this.curContext() === ot.q_tmpl ? this.context.pop() : this.context.push(ot.q_tmpl), this.exprAllowed = !1;\n}, x.star.updateContext = function (t) {\n if (t === x._function) {\n var e = this.context.length - 1;\n this.context[e] = this.context[e] === ot.f_expr ? ot.f_expr_gen : ot.f_gen;\n }\n\n this.exprAllowed = !0;\n}, x.name.updateContext = function (t) {\n var e = !1;\n this.options.ecmaVersion >= 6 && t !== x.dot && (\"of\" === this.value && !this.exprAllowed || \"yield\" === this.value && this.inGeneratorContext()) && (e = !0), this.exprAllowed = e;\n};\nvar ht = \"ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS\",\n ct = {\n 9: ht,\n 10: ht + \" Extended_Pictographic\"\n},\n lt = \"Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu\",\n ut = \"Adlam Adlm Ahom Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb\",\n dt = {\n 9: ut,\n 10: ut + \" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd\"\n},\n ft = {};\n\nfunction mt(t) {\n var e = ft[t] = {\n binary: N(ct[t] + \" \" + lt),\n nonBinary: {\n General_Category: N(lt),\n Script: N(dt[t])\n }\n };\n e.nonBinary.Script_Extensions = e.nonBinary.Script, e.nonBinary.gc = e.nonBinary.General_Category, e.nonBinary.sc = e.nonBinary.Script, e.nonBinary.scx = e.nonBinary.Script_Extensions;\n}\n\nmt(9), mt(10);\n\nvar gt = M.prototype,\n yt = function yt(t) {\n this.parser = t, this.validFlags = \"gim\" + (t.options.ecmaVersion >= 6 ? \"uy\" : \"\") + (t.options.ecmaVersion >= 9 ? \"s\" : \"\"), this.unicodeProperties = ft[t.options.ecmaVersion >= 10 ? 10 : t.options.ecmaVersion], this.source = \"\", this.flags = \"\", this.start = 0, this.switchU = !1, this.switchN = !1, this.pos = 0, this.lastIntValue = 0, this.lastStringValue = \"\", this.lastAssertionIsQuantifiable = !1, this.numCapturingParens = 0, this.maxBackReference = 0, this.groupNames = [], this.backReferenceNames = [];\n};\n\nfunction vt(t) {\n return t <= 65535 ? String.fromCharCode(t) : (t -= 65536, String.fromCharCode(55296 + (t >> 10), 56320 + (1023 & t)));\n}\n\nfunction xt(t) {\n return 36 === t || t >= 40 && t <= 43 || 46 === t || 63 === t || t >= 91 && t <= 94 || t >= 123 && t <= 125;\n}\n\nfunction bt(t) {\n return t >= 65 && t <= 90 || t >= 97 && t <= 122;\n}\n\nfunction _t(t) {\n return bt(t) || 95 === t;\n}\n\nfunction St(t) {\n return _t(t) || kt(t);\n}\n\nfunction kt(t) {\n return t >= 48 && t <= 57;\n}\n\nfunction wt(t) {\n return t >= 48 && t <= 57 || t >= 65 && t <= 70 || t >= 97 && t <= 102;\n}\n\nfunction Et(t) {\n return t >= 65 && t <= 70 ? t - 65 + 10 : t >= 97 && t <= 102 ? t - 97 + 10 : t - 48;\n}\n\nfunction Ct(t) {\n return t >= 48 && t <= 55;\n}\n\nyt.prototype.reset = function (t, e, i) {\n var s = -1 !== i.indexOf(\"u\");\n this.start = 0 | t, this.source = e + \"\", this.flags = i, this.switchU = s && this.parser.options.ecmaVersion >= 6, this.switchN = s && this.parser.options.ecmaVersion >= 9;\n}, yt.prototype.raise = function (t) {\n this.parser.raiseRecoverable(this.start, \"Invalid regular expression: /\" + this.source + \"/: \" + t);\n}, yt.prototype.at = function (t) {\n var e = this.source,\n i = e.length;\n if (t >= i) return -1;\n var s = e.charCodeAt(t);\n return !this.switchU || s <= 55295 || s >= 57344 || t + 1 >= i ? s : (s << 10) + e.charCodeAt(t + 1) - 56613888;\n}, yt.prototype.nextIndex = function (t) {\n var e = this.source,\n i = e.length;\n if (t >= i) return i;\n var s = e.charCodeAt(t);\n return !this.switchU || s <= 55295 || s >= 57344 || t + 1 >= i ? t + 1 : t + 2;\n}, yt.prototype.current = function () {\n return this.at(this.pos);\n}, yt.prototype.lookahead = function () {\n return this.at(this.nextIndex(this.pos));\n}, yt.prototype.advance = function () {\n this.pos = this.nextIndex(this.pos);\n}, yt.prototype.eat = function (t) {\n return this.current() === t && (this.advance(), !0);\n}, gt.validateRegExpFlags = function (t) {\n for (var e = t.validFlags, i = t.flags, s = 0; s < i.length; s++) {\n var r = i.charAt(s);\n -1 === e.indexOf(r) && this.raise(t.start, \"Invalid regular expression flag\"), i.indexOf(r, s + 1) > -1 && this.raise(t.start, \"Duplicate regular expression flag\");\n }\n}, gt.validateRegExpPattern = function (t) {\n this.regexp_pattern(t), !t.switchN && this.options.ecmaVersion >= 9 && t.groupNames.length > 0 && (t.switchN = !0, this.regexp_pattern(t));\n}, gt.regexp_pattern = function (t) {\n t.pos = 0, t.lastIntValue = 0, t.lastStringValue = \"\", t.lastAssertionIsQuantifiable = !1, t.numCapturingParens = 0, t.maxBackReference = 0, t.groupNames.length = 0, t.backReferenceNames.length = 0, this.regexp_disjunction(t), t.pos !== t.source.length && (t.eat(41) && t.raise(\"Unmatched ')'\"), (t.eat(93) || t.eat(125)) && t.raise(\"Lone quantifier brackets\")), t.maxBackReference > t.numCapturingParens && t.raise(\"Invalid escape\");\n\n for (var e = 0, i = t.backReferenceNames; e < i.length; e += 1) {\n -1 === t.groupNames.indexOf(i[e]) && t.raise(\"Invalid named capture referenced\");\n }\n}, gt.regexp_disjunction = function (t) {\n for (this.regexp_alternative(t); t.eat(124);) {\n this.regexp_alternative(t);\n }\n\n this.regexp_eatQuantifier(t, !0) && t.raise(\"Nothing to repeat\"), t.eat(123) && t.raise(\"Lone quantifier brackets\");\n}, gt.regexp_alternative = function (t) {\n for (; t.pos < t.source.length && this.regexp_eatTerm(t);) {\n ;\n }\n}, gt.regexp_eatTerm = function (t) {\n return this.regexp_eatAssertion(t) ? (t.lastAssertionIsQuantifiable && this.regexp_eatQuantifier(t) && t.switchU && t.raise(\"Invalid quantifier\"), !0) : !(t.switchU ? !this.regexp_eatAtom(t) : !this.regexp_eatExtendedAtom(t)) && (this.regexp_eatQuantifier(t), !0);\n}, gt.regexp_eatAssertion = function (t) {\n var e = t.pos;\n if (t.lastAssertionIsQuantifiable = !1, t.eat(94) || t.eat(36)) return !0;\n\n if (t.eat(92)) {\n if (t.eat(66) || t.eat(98)) return !0;\n t.pos = e;\n }\n\n if (t.eat(40) && t.eat(63)) {\n var i = !1;\n if (this.options.ecmaVersion >= 9 && (i = t.eat(60)), t.eat(61) || t.eat(33)) return this.regexp_disjunction(t), t.eat(41) || t.raise(\"Unterminated group\"), t.lastAssertionIsQuantifiable = !i, !0;\n }\n\n return t.pos = e, !1;\n}, gt.regexp_eatQuantifier = function (t, e) {\n return void 0 === e && (e = !1), !!this.regexp_eatQuantifierPrefix(t, e) && (t.eat(63), !0);\n}, gt.regexp_eatQuantifierPrefix = function (t, e) {\n return t.eat(42) || t.eat(43) || t.eat(63) || this.regexp_eatBracedQuantifier(t, e);\n}, gt.regexp_eatBracedQuantifier = function (t, e) {\n var i = t.pos;\n\n if (t.eat(123)) {\n var s = 0,\n r = -1;\n if (this.regexp_eatDecimalDigits(t) && (s = t.lastIntValue, t.eat(44) && this.regexp_eatDecimalDigits(t) && (r = t.lastIntValue), t.eat(125))) return -1 !== r && r < s && !e && t.raise(\"numbers out of order in {} quantifier\"), !0;\n t.switchU && !e && t.raise(\"Incomplete quantifier\"), t.pos = i;\n }\n\n return !1;\n}, gt.regexp_eatAtom = function (t) {\n return this.regexp_eatPatternCharacters(t) || t.eat(46) || this.regexp_eatReverseSolidusAtomEscape(t) || this.regexp_eatCharacterClass(t) || this.regexp_eatUncapturingGroup(t) || this.regexp_eatCapturingGroup(t);\n}, gt.regexp_eatReverseSolidusAtomEscape = function (t) {\n var e = t.pos;\n\n if (t.eat(92)) {\n if (this.regexp_eatAtomEscape(t)) return !0;\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatUncapturingGroup = function (t) {\n var e = t.pos;\n\n if (t.eat(40)) {\n if (t.eat(63) && t.eat(58)) {\n if (this.regexp_disjunction(t), t.eat(41)) return !0;\n t.raise(\"Unterminated group\");\n }\n\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatCapturingGroup = function (t) {\n if (t.eat(40)) {\n if (this.options.ecmaVersion >= 9 ? this.regexp_groupSpecifier(t) : 63 === t.current() && t.raise(\"Invalid group\"), this.regexp_disjunction(t), t.eat(41)) return t.numCapturingParens += 1, !0;\n t.raise(\"Unterminated group\");\n }\n\n return !1;\n}, gt.regexp_eatExtendedAtom = function (t) {\n return t.eat(46) || this.regexp_eatReverseSolidusAtomEscape(t) || this.regexp_eatCharacterClass(t) || this.regexp_eatUncapturingGroup(t) || this.regexp_eatCapturingGroup(t) || this.regexp_eatInvalidBracedQuantifier(t) || this.regexp_eatExtendedPatternCharacter(t);\n}, gt.regexp_eatInvalidBracedQuantifier = function (t) {\n return this.regexp_eatBracedQuantifier(t, !0) && t.raise(\"Nothing to repeat\"), !1;\n}, gt.regexp_eatSyntaxCharacter = function (t) {\n var e = t.current();\n return !!xt(e) && (t.lastIntValue = e, t.advance(), !0);\n}, gt.regexp_eatPatternCharacters = function (t) {\n for (var e = t.pos, i = 0; -1 !== (i = t.current()) && !xt(i);) {\n t.advance();\n }\n\n return t.pos !== e;\n}, gt.regexp_eatExtendedPatternCharacter = function (t) {\n var e = t.current();\n return !(-1 === e || 36 === e || e >= 40 && e <= 43 || 46 === e || 63 === e || 91 === e || 94 === e || 124 === e || (t.advance(), 0));\n}, gt.regexp_groupSpecifier = function (t) {\n if (t.eat(63)) {\n if (this.regexp_eatGroupName(t)) return -1 !== t.groupNames.indexOf(t.lastStringValue) && t.raise(\"Duplicate capture group name\"), void t.groupNames.push(t.lastStringValue);\n t.raise(\"Invalid group\");\n }\n}, gt.regexp_eatGroupName = function (t) {\n if (t.lastStringValue = \"\", t.eat(60)) {\n if (this.regexp_eatRegExpIdentifierName(t) && t.eat(62)) return !0;\n t.raise(\"Invalid capture group name\");\n }\n\n return !1;\n}, gt.regexp_eatRegExpIdentifierName = function (t) {\n if (t.lastStringValue = \"\", this.regexp_eatRegExpIdentifierStart(t)) {\n for (t.lastStringValue += vt(t.lastIntValue); this.regexp_eatRegExpIdentifierPart(t);) {\n t.lastStringValue += vt(t.lastIntValue);\n }\n\n return !0;\n }\n\n return !1;\n}, gt.regexp_eatRegExpIdentifierStart = function (t) {\n var e = t.pos,\n i = t.current();\n return t.advance(), 92 === i && this.regexp_eatRegExpUnicodeEscapeSequence(t) && (i = t.lastIntValue), function (t) {\n return l(t, !0) || 36 === t || 95 === t;\n }(i) ? (t.lastIntValue = i, !0) : (t.pos = e, !1);\n}, gt.regexp_eatRegExpIdentifierPart = function (t) {\n var e = t.pos,\n i = t.current();\n return t.advance(), 92 === i && this.regexp_eatRegExpUnicodeEscapeSequence(t) && (i = t.lastIntValue), function (t) {\n return u(t, !0) || 36 === t || 95 === t || 8204 === t || 8205 === t;\n }(i) ? (t.lastIntValue = i, !0) : (t.pos = e, !1);\n}, gt.regexp_eatAtomEscape = function (t) {\n return !!(this.regexp_eatBackReference(t) || this.regexp_eatCharacterClassEscape(t) || this.regexp_eatCharacterEscape(t) || t.switchN && this.regexp_eatKGroupName(t)) || (t.switchU && (99 === t.current() && t.raise(\"Invalid unicode escape\"), t.raise(\"Invalid escape\")), !1);\n}, gt.regexp_eatBackReference = function (t) {\n var e = t.pos;\n\n if (this.regexp_eatDecimalEscape(t)) {\n var i = t.lastIntValue;\n if (t.switchU) return i > t.maxBackReference && (t.maxBackReference = i), !0;\n if (i <= t.numCapturingParens) return !0;\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatKGroupName = function (t) {\n if (t.eat(107)) {\n if (this.regexp_eatGroupName(t)) return t.backReferenceNames.push(t.lastStringValue), !0;\n t.raise(\"Invalid named reference\");\n }\n\n return !1;\n}, gt.regexp_eatCharacterEscape = function (t) {\n return this.regexp_eatControlEscape(t) || this.regexp_eatCControlLetter(t) || this.regexp_eatZero(t) || this.regexp_eatHexEscapeSequence(t) || this.regexp_eatRegExpUnicodeEscapeSequence(t) || !t.switchU && this.regexp_eatLegacyOctalEscapeSequence(t) || this.regexp_eatIdentityEscape(t);\n}, gt.regexp_eatCControlLetter = function (t) {\n var e = t.pos;\n\n if (t.eat(99)) {\n if (this.regexp_eatControlLetter(t)) return !0;\n t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatZero = function (t) {\n return 48 === t.current() && !kt(t.lookahead()) && (t.lastIntValue = 0, t.advance(), !0);\n}, gt.regexp_eatControlEscape = function (t) {\n var e = t.current();\n return 116 === e ? (t.lastIntValue = 9, t.advance(), !0) : 110 === e ? (t.lastIntValue = 10, t.advance(), !0) : 118 === e ? (t.lastIntValue = 11, t.advance(), !0) : 102 === e ? (t.lastIntValue = 12, t.advance(), !0) : 114 === e && (t.lastIntValue = 13, t.advance(), !0);\n}, gt.regexp_eatControlLetter = function (t) {\n var e = t.current();\n return !!bt(e) && (t.lastIntValue = e % 32, t.advance(), !0);\n}, gt.regexp_eatRegExpUnicodeEscapeSequence = function (t) {\n var e,\n i = t.pos;\n\n if (t.eat(117)) {\n if (this.regexp_eatFixedHexDigits(t, 4)) {\n var s = t.lastIntValue;\n\n if (t.switchU && s >= 55296 && s <= 56319) {\n var r = t.pos;\n\n if (t.eat(92) && t.eat(117) && this.regexp_eatFixedHexDigits(t, 4)) {\n var n = t.lastIntValue;\n if (n >= 56320 && n <= 57343) return t.lastIntValue = 1024 * (s - 55296) + (n - 56320) + 65536, !0;\n }\n\n t.pos = r, t.lastIntValue = s;\n }\n\n return !0;\n }\n\n if (t.switchU && t.eat(123) && this.regexp_eatHexDigits(t) && t.eat(125) && (e = t.lastIntValue) >= 0 && e <= 1114111) return !0;\n t.switchU && t.raise(\"Invalid unicode escape\"), t.pos = i;\n }\n\n return !1;\n}, gt.regexp_eatIdentityEscape = function (t) {\n if (t.switchU) return !!this.regexp_eatSyntaxCharacter(t) || !!t.eat(47) && (t.lastIntValue = 47, !0);\n var e = t.current();\n return !(99 === e || t.switchN && 107 === e || (t.lastIntValue = e, t.advance(), 0));\n}, gt.regexp_eatDecimalEscape = function (t) {\n t.lastIntValue = 0;\n var e = t.current();\n\n if (e >= 49 && e <= 57) {\n do {\n t.lastIntValue = 10 * t.lastIntValue + (e - 48), t.advance();\n } while ((e = t.current()) >= 48 && e <= 57);\n\n return !0;\n }\n\n return !1;\n}, gt.regexp_eatCharacterClassEscape = function (t) {\n var e = t.current();\n if (function (t) {\n return 100 === t || 68 === t || 115 === t || 83 === t || 119 === t || 87 === t;\n }(e)) return t.lastIntValue = -1, t.advance(), !0;\n\n if (t.switchU && this.options.ecmaVersion >= 9 && (80 === e || 112 === e)) {\n if (t.lastIntValue = -1, t.advance(), t.eat(123) && this.regexp_eatUnicodePropertyValueExpression(t) && t.eat(125)) return !0;\n t.raise(\"Invalid property name\");\n }\n\n return !1;\n}, gt.regexp_eatUnicodePropertyValueExpression = function (t) {\n var e = t.pos;\n\n if (this.regexp_eatUnicodePropertyName(t) && t.eat(61)) {\n var i = t.lastStringValue;\n if (this.regexp_eatUnicodePropertyValue(t)) return this.regexp_validateUnicodePropertyNameAndValue(t, i, t.lastStringValue), !0;\n }\n\n return t.pos = e, !!this.regexp_eatLoneUnicodePropertyNameOrValue(t) && (this.regexp_validateUnicodePropertyNameOrValue(t, t.lastStringValue), !0);\n}, gt.regexp_validateUnicodePropertyNameAndValue = function (t, e, i) {\n I(t.unicodeProperties.nonBinary, e) || t.raise(\"Invalid property name\"), t.unicodeProperties.nonBinary[e].test(i) || t.raise(\"Invalid property value\");\n}, gt.regexp_validateUnicodePropertyNameOrValue = function (t, e) {\n t.unicodeProperties.binary.test(e) || t.raise(\"Invalid property name\");\n}, gt.regexp_eatUnicodePropertyName = function (t) {\n var e = 0;\n\n for (t.lastStringValue = \"\"; _t(e = t.current());) {\n t.lastStringValue += vt(e), t.advance();\n }\n\n return \"\" !== t.lastStringValue;\n}, gt.regexp_eatUnicodePropertyValue = function (t) {\n var e = 0;\n\n for (t.lastStringValue = \"\"; St(e = t.current());) {\n t.lastStringValue += vt(e), t.advance();\n }\n\n return \"\" !== t.lastStringValue;\n}, gt.regexp_eatLoneUnicodePropertyNameOrValue = function (t) {\n return this.regexp_eatUnicodePropertyValue(t);\n}, gt.regexp_eatCharacterClass = function (t) {\n if (t.eat(91)) {\n if (t.eat(94), this.regexp_classRanges(t), t.eat(93)) return !0;\n t.raise(\"Unterminated character class\");\n }\n\n return !1;\n}, gt.regexp_classRanges = function (t) {\n for (; this.regexp_eatClassAtom(t);) {\n var e = t.lastIntValue;\n\n if (t.eat(45) && this.regexp_eatClassAtom(t)) {\n var i = t.lastIntValue;\n !t.switchU || -1 !== e && -1 !== i || t.raise(\"Invalid character class\"), -1 !== e && -1 !== i && e > i && t.raise(\"Range out of order in character class\");\n }\n }\n}, gt.regexp_eatClassAtom = function (t) {\n var e = t.pos;\n\n if (t.eat(92)) {\n if (this.regexp_eatClassEscape(t)) return !0;\n\n if (t.switchU) {\n var i = t.current();\n (99 === i || Ct(i)) && t.raise(\"Invalid class escape\"), t.raise(\"Invalid escape\");\n }\n\n t.pos = e;\n }\n\n var s = t.current();\n return 93 !== s && (t.lastIntValue = s, t.advance(), !0);\n}, gt.regexp_eatClassEscape = function (t) {\n var e = t.pos;\n if (t.eat(98)) return t.lastIntValue = 8, !0;\n if (t.switchU && t.eat(45)) return t.lastIntValue = 45, !0;\n\n if (!t.switchU && t.eat(99)) {\n if (this.regexp_eatClassControlLetter(t)) return !0;\n t.pos = e;\n }\n\n return this.regexp_eatCharacterClassEscape(t) || this.regexp_eatCharacterEscape(t);\n}, gt.regexp_eatClassControlLetter = function (t) {\n var e = t.current();\n return !(!kt(e) && 95 !== e || (t.lastIntValue = e % 32, t.advance(), 0));\n}, gt.regexp_eatHexEscapeSequence = function (t) {\n var e = t.pos;\n\n if (t.eat(120)) {\n if (this.regexp_eatFixedHexDigits(t, 2)) return !0;\n t.switchU && t.raise(\"Invalid escape\"), t.pos = e;\n }\n\n return !1;\n}, gt.regexp_eatDecimalDigits = function (t) {\n var e = t.pos,\n i = 0;\n\n for (t.lastIntValue = 0; kt(i = t.current());) {\n t.lastIntValue = 10 * t.lastIntValue + (i - 48), t.advance();\n }\n\n return t.pos !== e;\n}, gt.regexp_eatHexDigits = function (t) {\n var e = t.pos,\n i = 0;\n\n for (t.lastIntValue = 0; wt(i = t.current());) {\n t.lastIntValue = 16 * t.lastIntValue + Et(i), t.advance();\n }\n\n return t.pos !== e;\n}, gt.regexp_eatLegacyOctalEscapeSequence = function (t) {\n if (this.regexp_eatOctalDigit(t)) {\n var e = t.lastIntValue;\n\n if (this.regexp_eatOctalDigit(t)) {\n var i = t.lastIntValue;\n t.lastIntValue = e <= 3 && this.regexp_eatOctalDigit(t) ? 64 * e + 8 * i + t.lastIntValue : 8 * e + i;\n } else t.lastIntValue = e;\n\n return !0;\n }\n\n return !1;\n}, gt.regexp_eatOctalDigit = function (t) {\n var e = t.current();\n return Ct(e) ? (t.lastIntValue = e - 48, t.advance(), !0) : (t.lastIntValue = 0, !1);\n}, gt.regexp_eatFixedHexDigits = function (t, e) {\n var i = t.pos;\n t.lastIntValue = 0;\n\n for (var s = 0; s < e; ++s) {\n var r = t.current();\n if (!wt(r)) return t.pos = i, !1;\n t.lastIntValue = 16 * t.lastIntValue + Et(r), t.advance();\n }\n\n return !0;\n};\n\nvar At = function At(t) {\n this.type = t.type, this.value = t.value, this.start = t.start, this.end = t.end, t.options.locations && (this.loc = new T(t, t.startLoc, t.endLoc)), t.options.ranges && (this.range = [t.start, t.end]);\n},\n It = M.prototype;\n\nfunction Lt(t) {\n return t <= 65535 ? String.fromCharCode(t) : (t -= 65536, String.fromCharCode(55296 + (t >> 10), 56320 + (1023 & t)));\n}\n\nIt.next = function () {\n this.options.onToken && this.options.onToken(new At(this)), this.lastTokEnd = this.end, this.lastTokStart = this.start, this.lastTokEndLoc = this.endLoc, this.lastTokStartLoc = this.startLoc, this.nextToken();\n}, It.getToken = function () {\n return this.next(), new At(this);\n}, \"undefined\" != typeof Symbol && (It[Symbol.iterator] = function () {\n var t = this;\n return {\n next: function next() {\n var e = t.getToken();\n return {\n done: e.type === x.eof,\n value: e\n };\n }\n };\n}), It.curContext = function () {\n return this.context[this.context.length - 1];\n}, It.nextToken = function () {\n var t = this.curContext();\n return t && t.preserveSpace || this.skipSpace(), this.start = this.pos, this.options.locations && (this.startLoc = this.curPosition()), this.pos >= this.input.length ? this.finishToken(x.eof) : t.override ? t.override(this) : void this.readToken(this.fullCharCodeAtPos());\n}, It.readToken = function (t) {\n return l(t, this.options.ecmaVersion >= 6) || 92 === t ? this.readWord() : this.getTokenFromCode(t);\n}, It.fullCharCodeAtPos = function () {\n var t = this.input.charCodeAt(this.pos);\n return t <= 55295 || t >= 57344 ? t : (t << 10) + this.input.charCodeAt(this.pos + 1) - 56613888;\n}, It.skipBlockComment = function () {\n var t,\n e = this.options.onComment && this.curPosition(),\n i = this.pos,\n s = this.input.indexOf(\"*/\", this.pos += 2);\n if (-1 === s && this.raise(this.pos - 2, \"Unterminated comment\"), this.pos = s + 2, this.options.locations) for (_.lastIndex = i; (t = _.exec(this.input)) && t.index < this.pos;) {\n ++this.curLine, this.lineStart = t.index + t[0].length;\n }\n this.options.onComment && this.options.onComment(!0, this.input.slice(i + 2, s), i, this.pos, e, this.curPosition());\n}, It.skipLineComment = function (t) {\n for (var e = this.pos, i = this.options.onComment && this.curPosition(), s = this.input.charCodeAt(this.pos += t); this.pos < this.input.length && !S(s);) {\n s = this.input.charCodeAt(++this.pos);\n }\n\n this.options.onComment && this.options.onComment(!1, this.input.slice(e + t, this.pos), e, this.pos, i, this.curPosition());\n}, It.skipSpace = function () {\n t: for (; this.pos < this.input.length;) {\n var t = this.input.charCodeAt(this.pos);\n\n switch (t) {\n case 32:\n case 160:\n ++this.pos;\n break;\n\n case 13:\n 10 === this.input.charCodeAt(this.pos + 1) && ++this.pos;\n\n case 10:\n case 8232:\n case 8233:\n ++this.pos, this.options.locations && (++this.curLine, this.lineStart = this.pos);\n break;\n\n case 47:\n switch (this.input.charCodeAt(this.pos + 1)) {\n case 42:\n this.skipBlockComment();\n break;\n\n case 47:\n this.skipLineComment(2);\n break;\n\n default:\n break t;\n }\n\n break;\n\n default:\n if (!(t > 8 && t < 14 || t >= 5760 && k.test(String.fromCharCode(t)))) break t;\n ++this.pos;\n }\n }\n}, It.finishToken = function (t, e) {\n this.end = this.pos, this.options.locations && (this.endLoc = this.curPosition());\n var i = this.type;\n this.type = t, this.value = e, this.updateContext(i);\n}, It.readToken_dot = function () {\n var t = this.input.charCodeAt(this.pos + 1);\n if (t >= 48 && t <= 57) return this.readNumber(!0);\n var e = this.input.charCodeAt(this.pos + 2);\n return this.options.ecmaVersion >= 6 && 46 === t && 46 === e ? (this.pos += 3, this.finishToken(x.ellipsis)) : (++this.pos, this.finishToken(x.dot));\n}, It.readToken_slash = function () {\n var t = this.input.charCodeAt(this.pos + 1);\n return this.exprAllowed ? (++this.pos, this.readRegexp()) : 61 === t ? this.finishOp(x.assign, 2) : this.finishOp(x.slash, 1);\n}, It.readToken_mult_modulo_exp = function (t) {\n var e = this.input.charCodeAt(this.pos + 1),\n i = 1,\n s = 42 === t ? x.star : x.modulo;\n return this.options.ecmaVersion >= 7 && 42 === t && 42 === e && (++i, s = x.starstar, e = this.input.charCodeAt(this.pos + 2)), 61 === e ? this.finishOp(x.assign, i + 1) : this.finishOp(s, i);\n}, It.readToken_pipe_amp = function (t) {\n var e = this.input.charCodeAt(this.pos + 1);\n return e === t ? this.finishOp(124 === t ? x.logicalOR : x.logicalAND, 2) : 61 === e ? this.finishOp(x.assign, 2) : this.finishOp(124 === t ? x.bitwiseOR : x.bitwiseAND, 1);\n}, It.readToken_caret = function () {\n return 61 === this.input.charCodeAt(this.pos + 1) ? this.finishOp(x.assign, 2) : this.finishOp(x.bitwiseXOR, 1);\n}, It.readToken_plus_min = function (t) {\n var e = this.input.charCodeAt(this.pos + 1);\n return e === t ? 45 !== e || this.inModule || 62 !== this.input.charCodeAt(this.pos + 2) || 0 !== this.lastTokEnd && !b.test(this.input.slice(this.lastTokEnd, this.pos)) ? this.finishOp(x.incDec, 2) : (this.skipLineComment(3), this.skipSpace(), this.nextToken()) : 61 === e ? this.finishOp(x.assign, 2) : this.finishOp(x.plusMin, 1);\n}, It.readToken_lt_gt = function (t) {\n var e = this.input.charCodeAt(this.pos + 1),\n i = 1;\n return e === t ? (i = 62 === t && 62 === this.input.charCodeAt(this.pos + 2) ? 3 : 2, 61 === this.input.charCodeAt(this.pos + i) ? this.finishOp(x.assign, i + 1) : this.finishOp(x.bitShift, i)) : 33 !== e || 60 !== t || this.inModule || 45 !== this.input.charCodeAt(this.pos + 2) || 45 !== this.input.charCodeAt(this.pos + 3) ? (61 === e && (i = 2), this.finishOp(x.relational, i)) : (this.skipLineComment(4), this.skipSpace(), this.nextToken());\n}, It.readToken_eq_excl = function (t) {\n var e = this.input.charCodeAt(this.pos + 1);\n return 61 === e ? this.finishOp(x.equality, 61 === this.input.charCodeAt(this.pos + 2) ? 3 : 2) : 61 === t && 62 === e && this.options.ecmaVersion >= 6 ? (this.pos += 2, this.finishToken(x.arrow)) : this.finishOp(61 === t ? x.eq : x.prefix, 1);\n}, It.getTokenFromCode = function (t) {\n switch (t) {\n case 46:\n return this.readToken_dot();\n\n case 40:\n return ++this.pos, this.finishToken(x.parenL);\n\n case 41:\n return ++this.pos, this.finishToken(x.parenR);\n\n case 59:\n return ++this.pos, this.finishToken(x.semi);\n\n case 44:\n return ++this.pos, this.finishToken(x.comma);\n\n case 91:\n return ++this.pos, this.finishToken(x.bracketL);\n\n case 93:\n return ++this.pos, this.finishToken(x.bracketR);\n\n case 123:\n return ++this.pos, this.finishToken(x.braceL);\n\n case 125:\n return ++this.pos, this.finishToken(x.braceR);\n\n case 58:\n return ++this.pos, this.finishToken(x.colon);\n\n case 63:\n return ++this.pos, this.finishToken(x.question);\n\n case 96:\n if (this.options.ecmaVersion < 6) break;\n return ++this.pos, this.finishToken(x.backQuote);\n\n case 48:\n var e = this.input.charCodeAt(this.pos + 1);\n if (120 === e || 88 === e) return this.readRadixNumber(16);\n\n if (this.options.ecmaVersion >= 6) {\n if (111 === e || 79 === e) return this.readRadixNumber(8);\n if (98 === e || 66 === e) return this.readRadixNumber(2);\n }\n\n case 49:\n case 50:\n case 51:\n case 52:\n case 53:\n case 54:\n case 55:\n case 56:\n case 57:\n return this.readNumber(!1);\n\n case 34:\n case 39:\n return this.readString(t);\n\n case 47:\n return this.readToken_slash();\n\n case 37:\n case 42:\n return this.readToken_mult_modulo_exp(t);\n\n case 124:\n case 38:\n return this.readToken_pipe_amp(t);\n\n case 94:\n return this.readToken_caret();\n\n case 43:\n case 45:\n return this.readToken_plus_min(t);\n\n case 60:\n case 62:\n return this.readToken_lt_gt(t);\n\n case 61:\n case 33:\n return this.readToken_eq_excl(t);\n\n case 126:\n return this.finishOp(x.prefix, 1);\n }\n\n this.raise(this.pos, \"Unexpected character '\" + Lt(t) + \"'\");\n}, It.finishOp = function (t, e) {\n var i = this.input.slice(this.pos, this.pos + e);\n return this.pos += e, this.finishToken(t, i);\n}, It.readRegexp = function () {\n for (var t, e, i = this.pos;;) {\n this.pos >= this.input.length && this.raise(i, \"Unterminated regular expression\");\n var s = this.input.charAt(this.pos);\n if (b.test(s) && this.raise(i, \"Unterminated regular expression\"), t) t = !1;else {\n if (\"[\" === s) e = !0;else if (\"]\" === s && e) e = !1;else if (\"/\" === s && !e) break;\n t = \"\\\\\" === s;\n }\n ++this.pos;\n }\n\n var r = this.input.slice(i, this.pos);\n ++this.pos;\n var n = this.pos,\n a = this.readWord1();\n this.containsEsc && this.unexpected(n);\n var o = this.regexpState || (this.regexpState = new yt(this));\n o.reset(i, r, a), this.validateRegExpFlags(o), this.validateRegExpPattern(o);\n var p = null;\n\n try {\n p = new RegExp(r, a);\n } catch (t) {}\n\n return this.finishToken(x.regexp, {\n pattern: r,\n flags: a,\n value: p\n });\n}, It.readInt = function (t, e) {\n for (var i = this.pos, s = 0, r = 0, n = null == e ? Infinity : e; r < n; ++r) {\n var a,\n o = this.input.charCodeAt(this.pos);\n if ((a = o >= 97 ? o - 97 + 10 : o >= 65 ? o - 65 + 10 : o >= 48 && o <= 57 ? o - 48 : Infinity) >= t) break;\n ++this.pos, s = s * t + a;\n }\n\n return this.pos === i || null != e && this.pos - i !== e ? null : s;\n}, It.readRadixNumber = function (t) {\n this.pos += 2;\n var e = this.readInt(t);\n return null == e && this.raise(this.start + 2, \"Expected number in radix \" + t), l(this.fullCharCodeAtPos()) && this.raise(this.pos, \"Identifier directly after number\"), this.finishToken(x.num, e);\n}, It.readNumber = function (t) {\n var e = this.pos;\n t || null !== this.readInt(10) || this.raise(e, \"Invalid number\");\n var i = this.pos - e >= 2 && 48 === this.input.charCodeAt(e);\n i && this.strict && this.raise(e, \"Invalid number\"), i && /[89]/.test(this.input.slice(e, this.pos)) && (i = !1);\n var s = this.input.charCodeAt(this.pos);\n 46 !== s || i || (++this.pos, this.readInt(10), s = this.input.charCodeAt(this.pos)), 69 !== s && 101 !== s || i || (43 !== (s = this.input.charCodeAt(++this.pos)) && 45 !== s || ++this.pos, null === this.readInt(10) && this.raise(e, \"Invalid number\")), l(this.fullCharCodeAtPos()) && this.raise(this.pos, \"Identifier directly after number\");\n var r = this.input.slice(e, this.pos),\n n = i ? parseInt(r, 8) : parseFloat(r);\n return this.finishToken(x.num, n);\n}, It.readCodePoint = function () {\n var t;\n\n if (123 === this.input.charCodeAt(this.pos)) {\n this.options.ecmaVersion < 6 && this.unexpected();\n var e = ++this.pos;\n t = this.readHexChar(this.input.indexOf(\"}\", this.pos) - this.pos), ++this.pos, t > 1114111 && this.invalidStringToken(e, \"Code point out of bounds\");\n } else t = this.readHexChar(4);\n\n return t;\n}, It.readString = function (t) {\n for (var e = \"\", i = ++this.pos;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated string constant\");\n var s = this.input.charCodeAt(this.pos);\n if (s === t) break;\n 92 === s ? (e += this.input.slice(i, this.pos), e += this.readEscapedChar(!1), i = this.pos) : (S(s, this.options.ecmaVersion >= 10) && this.raise(this.start, \"Unterminated string constant\"), ++this.pos);\n }\n\n return e += this.input.slice(i, this.pos++), this.finishToken(x.string, e);\n};\nvar Nt = {};\nIt.tryReadTemplateToken = function () {\n this.inTemplateElement = !0;\n\n try {\n this.readTmplToken();\n } catch (t) {\n if (t !== Nt) throw t;\n this.readInvalidTemplateToken();\n }\n\n this.inTemplateElement = !1;\n}, It.invalidStringToken = function (t, e) {\n if (this.inTemplateElement && this.options.ecmaVersion >= 9) throw Nt;\n this.raise(t, e);\n}, It.readTmplToken = function () {\n for (var t = \"\", e = this.pos;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated template\");\n var i = this.input.charCodeAt(this.pos);\n if (96 === i || 36 === i && 123 === this.input.charCodeAt(this.pos + 1)) return this.pos !== this.start || this.type !== x.template && this.type !== x.invalidTemplate ? (t += this.input.slice(e, this.pos), this.finishToken(x.template, t)) : 36 === i ? (this.pos += 2, this.finishToken(x.dollarBraceL)) : (++this.pos, this.finishToken(x.backQuote));\n if (92 === i) t += this.input.slice(e, this.pos), t += this.readEscapedChar(!0), e = this.pos;else if (S(i)) {\n switch (t += this.input.slice(e, this.pos), ++this.pos, i) {\n case 13:\n 10 === this.input.charCodeAt(this.pos) && ++this.pos;\n\n case 10:\n t += \"\\n\";\n break;\n\n default:\n t += String.fromCharCode(i);\n }\n\n this.options.locations && (++this.curLine, this.lineStart = this.pos), e = this.pos;\n } else ++this.pos;\n }\n}, It.readInvalidTemplateToken = function () {\n for (; this.pos < this.input.length; this.pos++) {\n switch (this.input[this.pos]) {\n case \"\\\\\":\n ++this.pos;\n break;\n\n case \"$\":\n if (\"{\" !== this.input[this.pos + 1]) break;\n\n case \"`\":\n return this.finishToken(x.invalidTemplate, this.input.slice(this.start, this.pos));\n }\n }\n\n this.raise(this.start, \"Unterminated template\");\n}, It.readEscapedChar = function (t) {\n var e = this.input.charCodeAt(++this.pos);\n\n switch (++this.pos, e) {\n case 110:\n return \"\\n\";\n\n case 114:\n return \"\\r\";\n\n case 120:\n return String.fromCharCode(this.readHexChar(2));\n\n case 117:\n return Lt(this.readCodePoint());\n\n case 116:\n return \"\\t\";\n\n case 98:\n return \"\\b\";\n\n case 118:\n return \"\\v\";\n\n case 102:\n return \"\\f\";\n\n case 13:\n 10 === this.input.charCodeAt(this.pos) && ++this.pos;\n\n case 10:\n return this.options.locations && (this.lineStart = this.pos, ++this.curLine), \"\";\n\n default:\n if (e >= 48 && e <= 55) {\n var i = this.input.substr(this.pos - 1, 3).match(/^[0-7]+/)[0],\n s = parseInt(i, 8);\n return s > 255 && (i = i.slice(0, -1), s = parseInt(i, 8)), this.pos += i.length - 1, e = this.input.charCodeAt(this.pos), \"0\" === i && 56 !== e && 57 !== e || !this.strict && !t || this.invalidStringToken(this.pos - 1 - i.length, t ? \"Octal literal in template string\" : \"Octal literal in strict mode\"), String.fromCharCode(s);\n }\n\n return S(e) ? \"\" : String.fromCharCode(e);\n }\n}, It.readHexChar = function (t) {\n var e = this.pos,\n i = this.readInt(16, t);\n return null === i && this.invalidStringToken(e, \"Bad character escape sequence\"), i;\n}, It.readWord1 = function () {\n this.containsEsc = !1;\n\n for (var t = \"\", e = !0, i = this.pos, s = this.options.ecmaVersion >= 6; this.pos < this.input.length;) {\n var r = this.fullCharCodeAtPos();\n if (u(r, s)) this.pos += r <= 65535 ? 1 : 2;else {\n if (92 !== r) break;\n this.containsEsc = !0, t += this.input.slice(i, this.pos);\n var n = this.pos;\n 117 !== this.input.charCodeAt(++this.pos) && this.invalidStringToken(this.pos, \"Expecting Unicode escape sequence \\\\uXXXX\"), ++this.pos;\n var a = this.readCodePoint();\n (e ? l : u)(a, s) || this.invalidStringToken(n, \"Invalid Unicode escape\"), t += Lt(a), i = this.pos;\n }\n e = !1;\n }\n\n return t + this.input.slice(i, this.pos);\n}, It.readWord = function () {\n var t = this.readWord1(),\n e = x.name;\n return this.keywords.test(t) && (this.containsEsc && this.raiseRecoverable(this.start, \"Escape sequence in keyword \" + t), e = y[t]), this.finishToken(e, t);\n};\nvar Pt = {\n quot: '\"',\n amp: \"&\",\n apos: \"'\",\n lt: \"<\",\n gt: \">\",\n nbsp: \" \",\n iexcl: \"¡\",\n cent: \"¢\",\n pound: \"£\",\n curren: \"¤\",\n yen: \"¥\",\n brvbar: \"¦\",\n sect: \"§\",\n uml: \"¨\",\n copy: \"©\",\n ordf: \"ª\",\n laquo: \"«\",\n not: \"¬\",\n shy: \"­\",\n reg: \"®\",\n macr: \"¯\",\n deg: \"°\",\n plusmn: \"±\",\n sup2: \"²\",\n sup3: \"³\",\n acute: \"´\",\n micro: \"µ\",\n para: \"¶\",\n middot: \"·\",\n cedil: \"¸\",\n sup1: \"¹\",\n ordm: \"º\",\n raquo: \"»\",\n frac14: \"¼\",\n frac12: \"½\",\n frac34: \"¾\",\n iquest: \"¿\",\n Agrave: \"À\",\n Aacute: \"Á\",\n Acirc: \"Â\",\n Atilde: \"Ã\",\n Auml: \"Ä\",\n Aring: \"Å\",\n AElig: \"Æ\",\n Ccedil: \"Ç\",\n Egrave: \"È\",\n Eacute: \"É\",\n Ecirc: \"Ê\",\n Euml: \"Ë\",\n Igrave: \"Ì\",\n Iacute: \"Í\",\n Icirc: \"Î\",\n Iuml: \"Ï\",\n ETH: \"Ð\",\n Ntilde: \"Ñ\",\n Ograve: \"Ò\",\n Oacute: \"Ó\",\n Ocirc: \"Ô\",\n Otilde: \"Õ\",\n Ouml: \"Ö\",\n times: \"×\",\n Oslash: \"Ø\",\n Ugrave: \"Ù\",\n Uacute: \"Ú\",\n Ucirc: \"Û\",\n Uuml: \"Ü\",\n Yacute: \"Ý\",\n THORN: \"Þ\",\n szlig: \"ß\",\n agrave: \"à\",\n aacute: \"á\",\n acirc: \"â\",\n atilde: \"ã\",\n auml: \"ä\",\n aring: \"å\",\n aelig: \"æ\",\n ccedil: \"ç\",\n egrave: \"è\",\n eacute: \"é\",\n ecirc: \"ê\",\n euml: \"ë\",\n igrave: \"ì\",\n iacute: \"í\",\n icirc: \"î\",\n iuml: \"ï\",\n eth: \"ð\",\n ntilde: \"ñ\",\n ograve: \"ò\",\n oacute: \"ó\",\n ocirc: \"ô\",\n otilde: \"õ\",\n ouml: \"ö\",\n divide: \"÷\",\n oslash: \"ø\",\n ugrave: \"ù\",\n uacute: \"ú\",\n ucirc: \"û\",\n uuml: \"ü\",\n yacute: \"ý\",\n thorn: \"þ\",\n yuml: \"ÿ\",\n OElig: \"Œ\",\n oelig: \"œ\",\n Scaron: \"Š\",\n scaron: \"š\",\n Yuml: \"Ÿ\",\n fnof: \"ƒ\",\n circ: \"ˆ\",\n tilde: \"˜\",\n Alpha: \"Α\",\n Beta: \"Β\",\n Gamma: \"Γ\",\n Delta: \"Δ\",\n Epsilon: \"Ε\",\n Zeta: \"Ζ\",\n Eta: \"Η\",\n Theta: \"Θ\",\n Iota: \"Ι\",\n Kappa: \"Κ\",\n Lambda: \"Λ\",\n Mu: \"Μ\",\n Nu: \"Ν\",\n Xi: \"Ξ\",\n Omicron: \"Ο\",\n Pi: \"Π\",\n Rho: \"Ρ\",\n Sigma: \"Σ\",\n Tau: \"Τ\",\n Upsilon: \"Υ\",\n Phi: \"Φ\",\n Chi: \"Χ\",\n Psi: \"Ψ\",\n Omega: \"Ω\",\n alpha: \"α\",\n beta: \"β\",\n gamma: \"γ\",\n delta: \"δ\",\n epsilon: \"ε\",\n zeta: \"ζ\",\n eta: \"η\",\n theta: \"θ\",\n iota: \"ι\",\n kappa: \"κ\",\n lambda: \"λ\",\n mu: \"μ\",\n nu: \"ν\",\n xi: \"ξ\",\n omicron: \"ο\",\n pi: \"π\",\n rho: \"ρ\",\n sigmaf: \"ς\",\n sigma: \"σ\",\n tau: \"τ\",\n upsilon: \"υ\",\n phi: \"φ\",\n chi: \"χ\",\n psi: \"ψ\",\n omega: \"ω\",\n thetasym: \"ϑ\",\n upsih: \"ϒ\",\n piv: \"ϖ\",\n ensp: \" \",\n emsp: \" \",\n thinsp: \" \",\n zwnj: \"‌\",\n zwj: \"‍\",\n lrm: \"‎\",\n rlm: \"‏\",\n ndash: \"–\",\n mdash: \"—\",\n lsquo: \"‘\",\n rsquo: \"’\",\n sbquo: \"‚\",\n ldquo: \"“\",\n rdquo: \"”\",\n bdquo: \"„\",\n dagger: \"†\",\n Dagger: \"‡\",\n bull: \"•\",\n hellip: \"…\",\n permil: \"‰\",\n prime: \"′\",\n Prime: \"″\",\n lsaquo: \"‹\",\n rsaquo: \"›\",\n oline: \"‾\",\n frasl: \"⁄\",\n euro: \"€\",\n image: \"ℑ\",\n weierp: \"℘\",\n real: \"ℜ\",\n trade: \"™\",\n alefsym: \"ℵ\",\n larr: \"←\",\n uarr: \"↑\",\n rarr: \"→\",\n darr: \"↓\",\n harr: \"↔\",\n crarr: \"↵\",\n lArr: \"⇐\",\n uArr: \"⇑\",\n rArr: \"⇒\",\n dArr: \"⇓\",\n hArr: \"⇔\",\n forall: \"∀\",\n part: \"∂\",\n exist: \"∃\",\n empty: \"∅\",\n nabla: \"∇\",\n isin: \"∈\",\n notin: \"∉\",\n ni: \"∋\",\n prod: \"∏\",\n sum: \"∑\",\n minus: \"−\",\n lowast: \"∗\",\n radic: \"√\",\n prop: \"∝\",\n infin: \"∞\",\n ang: \"∠\",\n and: \"∧\",\n or: \"∨\",\n cap: \"∩\",\n cup: \"∪\",\n int: \"∫\",\n there4: \"∴\",\n sim: \"∼\",\n cong: \"≅\",\n asymp: \"≈\",\n ne: \"≠\",\n equiv: \"≡\",\n le: \"≤\",\n ge: \"≥\",\n sub: \"⊂\",\n sup: \"⊃\",\n nsub: \"⊄\",\n sube: \"⊆\",\n supe: \"⊇\",\n oplus: \"⊕\",\n otimes: \"⊗\",\n perp: \"⊥\",\n sdot: \"⋅\",\n lceil: \"⌈\",\n rceil: \"⌉\",\n lfloor: \"⌊\",\n rfloor: \"⌋\",\n lang: \"〈\",\n rang: \"〉\",\n loz: \"◊\",\n spades: \"♠\",\n clubs: \"♣\",\n hearts: \"♥\",\n diams: \"♦\"\n},\n Tt = {\n version: \"6.1.1\",\n parse: function parse(t, e) {\n return M.parse(t, e);\n },\n parseExpressionAt: function parseExpressionAt(t, e, i) {\n return M.parseExpressionAt(t, e, i);\n },\n tokenizer: function tokenizer(t, e) {\n return M.tokenizer(t, e);\n },\n Parser: M,\n defaultOptions: O,\n Position: P,\n SourceLocation: T,\n getLineInfo: R,\n Node: st,\n TokenType: d,\n tokTypes: x,\n keywordTypes: y,\n TokContext: at,\n tokContexts: ot,\n isIdentifierChar: u,\n isIdentifierStart: l,\n Token: At,\n isNewLine: S,\n lineBreak: b,\n lineBreakG: _,\n nonASCIIwhitespace: k\n};\nvar Rt = /^[\\da-fA-F]+$/,\n Ot = /^\\d+$/,\n jt = Tt.tokTypes,\n Vt = Tt.TokContext,\n Dt = Tt.tokContexts,\n Bt = Tt.TokenType,\n Ft = Tt.isNewLine,\n Mt = Tt.isIdentifierStart,\n Ut = Tt.isIdentifierChar,\n qt = new Vt(\"...\", !0, !0),\n Wt = {\n jsxName: new Bt(\"jsxName\"),\n jsxText: new Bt(\"jsxText\", {\n beforeExpr: !0\n }),\n jsxTagStart: new Bt(\"jsxTagStart\"),\n jsxTagEnd: new Bt(\"jsxTagEnd\")\n};\n\nfunction zt(t) {\n return t ? \"JSXIdentifier\" === t.type ? t.name : \"JSXNamespacedName\" === t.type ? t.namespace.name + \":\" + t.name.name : \"JSXMemberExpression\" === t.type ? zt(t.object) + \".\" + zt(t.property) : void 0 : t;\n}\n\nWt.jsxTagStart.updateContext = function () {\n this.context.push(Jt), this.context.push(qt), this.exprAllowed = !1;\n}, Wt.jsxTagEnd.updateContext = function (t) {\n var e = this.context.pop();\n e === qt && t === jt.slash || e === Xt ? (this.context.pop(), this.exprAllowed = this.curContext() === Jt) : this.exprAllowed = !0;\n};\n\nvar Ht = function Ht(t) {\n return t = t || {}, function (e) {\n return function (t, e) {\n return /*#__PURE__*/function (_e2) {\n _inherits(_class, _e2);\n\n var _super = _createSuper(_class);\n\n function _class() {\n _classCallCheck(this, _class);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(_class, [{\n key: \"jsx_readToken\",\n value: function jsx_readToken() {\n var t = \"\",\n e = this.pos;\n\n for (;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated JSX contents\");\n\n var _i2 = this.input.charCodeAt(this.pos);\n\n switch (_i2) {\n case 60:\n case 123:\n return this.pos === this.start ? 60 === _i2 && this.exprAllowed ? (++this.pos, this.finishToken(Wt.jsxTagStart)) : this.getTokenFromCode(_i2) : (t += this.input.slice(e, this.pos), this.finishToken(Wt.jsxText, t));\n\n case 38:\n t += this.input.slice(e, this.pos), t += this.jsx_readEntity(), e = this.pos;\n break;\n\n default:\n Ft(_i2) ? (t += this.input.slice(e, this.pos), t += this.jsx_readNewLine(!0), e = this.pos) : ++this.pos;\n }\n }\n }\n }, {\n key: \"jsx_readNewLine\",\n value: function jsx_readNewLine(t) {\n var e,\n i = this.input.charCodeAt(this.pos);\n return ++this.pos, 13 === i && 10 === this.input.charCodeAt(this.pos) ? (++this.pos, e = t ? \"\\n\" : \"\\r\\n\") : e = String.fromCharCode(i), this.options.locations && (++this.curLine, this.lineStart = this.pos), e;\n }\n }, {\n key: \"jsx_readString\",\n value: function jsx_readString(t) {\n var e = \"\",\n i = ++this.pos;\n\n for (;;) {\n this.pos >= this.input.length && this.raise(this.start, \"Unterminated string constant\");\n\n var _s2 = this.input.charCodeAt(this.pos);\n\n if (_s2 === t) break;\n 38 === _s2 ? (e += this.input.slice(i, this.pos), e += this.jsx_readEntity(), i = this.pos) : Ft(_s2) ? (e += this.input.slice(i, this.pos), e += this.jsx_readNewLine(!1), i = this.pos) : ++this.pos;\n }\n\n return e += this.input.slice(i, this.pos++), this.finishToken(jt.string, e);\n }\n }, {\n key: \"jsx_readEntity\",\n value: function jsx_readEntity() {\n var t,\n e = \"\",\n i = 0,\n s = this.input[this.pos];\n \"&\" !== s && this.raise(this.pos, \"Entity must start with an ampersand\");\n var r = ++this.pos;\n\n for (; this.pos < this.input.length && i++ < 10;) {\n if (\";\" === (s = this.input[this.pos++])) {\n \"#\" === e[0] ? \"x\" === e[1] ? (e = e.substr(2), Rt.test(e) && (t = String.fromCharCode(parseInt(e, 16)))) : (e = e.substr(1), Ot.test(e) && (t = String.fromCharCode(parseInt(e, 10)))) : t = Pt[e];\n break;\n }\n\n e += s;\n }\n\n return t || (this.pos = r, \"&\");\n }\n }, {\n key: \"jsx_readWord\",\n value: function jsx_readWord() {\n var t,\n e = this.pos;\n\n do {\n t = this.input.charCodeAt(++this.pos);\n } while (Ut(t) || 45 === t);\n\n return this.finishToken(Wt.jsxName, this.input.slice(e, this.pos));\n }\n }, {\n key: \"jsx_parseIdentifier\",\n value: function jsx_parseIdentifier() {\n var t = this.startNode();\n return this.type === Wt.jsxName ? t.name = this.value : this.type.keyword ? t.name = this.type.keyword : this.unexpected(), this.next(), this.finishNode(t, \"JSXIdentifier\");\n }\n }, {\n key: \"jsx_parseNamespacedName\",\n value: function jsx_parseNamespacedName() {\n var e = this.start,\n i = this.startLoc,\n s = this.jsx_parseIdentifier();\n if (!t.allowNamespaces || !this.eat(jt.colon)) return s;\n var r = this.startNodeAt(e, i);\n return r.namespace = s, r.name = this.jsx_parseIdentifier(), this.finishNode(r, \"JSXNamespacedName\");\n }\n }, {\n key: \"jsx_parseElementName\",\n value: function jsx_parseElementName() {\n if (this.type === Wt.jsxTagEnd) return \"\";\n var e = this.start,\n i = this.startLoc,\n s = this.jsx_parseNamespacedName();\n\n for (this.type !== jt.dot || \"JSXNamespacedName\" !== s.type || t.allowNamespacedObjects || this.unexpected(); this.eat(jt.dot);) {\n var _t2 = this.startNodeAt(e, i);\n\n _t2.object = s, _t2.property = this.jsx_parseIdentifier(), s = this.finishNode(_t2, \"JSXMemberExpression\");\n }\n\n return s;\n }\n }, {\n key: \"jsx_parseAttributeValue\",\n value: function jsx_parseAttributeValue() {\n switch (this.type) {\n case jt.braceL:\n var _t3 = this.jsx_parseExpressionContainer();\n\n return \"JSXEmptyExpression\" === _t3.expression.type && this.raise(_t3.start, \"JSX attributes must only be assigned a non-empty expression\"), _t3;\n\n case Wt.jsxTagStart:\n case jt.string:\n return this.parseExprAtom();\n\n default:\n this.raise(this.start, \"JSX value should be either an expression or a quoted JSX text\");\n }\n }\n }, {\n key: \"jsx_parseEmptyExpression\",\n value: function jsx_parseEmptyExpression() {\n var t = this.startNodeAt(this.lastTokEnd, this.lastTokEndLoc);\n return this.finishNodeAt(t, \"JSXEmptyExpression\", this.start, this.startLoc);\n }\n }, {\n key: \"jsx_parseExpressionContainer\",\n value: function jsx_parseExpressionContainer() {\n var t = this.startNode();\n return this.next(), t.expression = this.type === jt.braceR ? this.jsx_parseEmptyExpression() : this.parseExpression(), this.expect(jt.braceR), this.finishNode(t, \"JSXExpressionContainer\");\n }\n }, {\n key: \"jsx_parseAttribute\",\n value: function jsx_parseAttribute() {\n var t = this.startNode();\n return this.eat(jt.braceL) ? (this.expect(jt.ellipsis), t.argument = this.parseMaybeAssign(), this.expect(jt.braceR), this.finishNode(t, \"JSXSpreadAttribute\")) : (t.name = this.jsx_parseNamespacedName(), t.value = this.eat(jt.eq) ? this.jsx_parseAttributeValue() : null, this.finishNode(t, \"JSXAttribute\"));\n }\n }, {\n key: \"jsx_parseOpeningElementAt\",\n value: function jsx_parseOpeningElementAt(t, e) {\n var i = this.startNodeAt(t, e);\n i.attributes = [];\n var s = this.jsx_parseElementName();\n\n for (s && (i.name = s); this.type !== jt.slash && this.type !== Wt.jsxTagEnd;) {\n i.attributes.push(this.jsx_parseAttribute());\n }\n\n return i.selfClosing = this.eat(jt.slash), this.expect(Wt.jsxTagEnd), this.finishNode(i, s ? \"JSXOpeningElement\" : \"JSXOpeningFragment\");\n }\n }, {\n key: \"jsx_parseClosingElementAt\",\n value: function jsx_parseClosingElementAt(t, e) {\n var i = this.startNodeAt(t, e),\n s = this.jsx_parseElementName();\n return s && (i.name = s), this.expect(Wt.jsxTagEnd), this.finishNode(i, s ? \"JSXClosingElement\" : \"JSXClosingFragment\");\n }\n }, {\n key: \"jsx_parseElementAt\",\n value: function jsx_parseElementAt(t, e) {\n var i = this.startNodeAt(t, e),\n s = [],\n r = this.jsx_parseOpeningElementAt(t, e),\n n = null;\n\n if (!r.selfClosing) {\n t: for (;;) {\n switch (this.type) {\n case Wt.jsxTagStart:\n if (t = this.start, e = this.startLoc, this.next(), this.eat(jt.slash)) {\n n = this.jsx_parseClosingElementAt(t, e);\n break t;\n }\n\n s.push(this.jsx_parseElementAt(t, e));\n break;\n\n case Wt.jsxText:\n s.push(this.parseExprAtom());\n break;\n\n case jt.braceL:\n s.push(this.jsx_parseExpressionContainer());\n break;\n\n default:\n this.unexpected();\n }\n }\n\n zt(n.name) !== zt(r.name) && this.raise(n.start, \"Expected corresponding JSX closing tag for <\" + zt(r.name) + \">\");\n }\n\n var a = r.name ? \"Element\" : \"Fragment\";\n return i[\"opening\" + a] = r, i[\"closing\" + a] = n, i.children = s, this.type === jt.relational && \"<\" === this.value && this.raise(this.start, \"Adjacent JSX elements must be wrapped in an enclosing tag\"), this.finishNode(i, \"JSX\" + a);\n }\n }, {\n key: \"jsx_parseText\",\n value: function jsx_parseText(t) {\n var e = this.parseLiteral(t);\n return e.type = \"JSXText\", e;\n }\n }, {\n key: \"jsx_parseElement\",\n value: function jsx_parseElement() {\n var t = this.start,\n e = this.startLoc;\n return this.next(), this.jsx_parseElementAt(t, e);\n }\n }, {\n key: \"parseExprAtom\",\n value: function parseExprAtom(t) {\n return this.type === Wt.jsxText ? this.jsx_parseText(this.value) : this.type === Wt.jsxTagStart ? this.jsx_parseElement() : _get(_getPrototypeOf(_class.prototype), \"parseExprAtom\", this).call(this, t);\n }\n }, {\n key: \"readToken\",\n value: function readToken(t) {\n var e = this.curContext();\n if (e === Jt) return this.jsx_readToken();\n\n if (e === qt || e === Xt) {\n if (Mt(t)) return this.jsx_readWord();\n if (62 == t) return ++this.pos, this.finishToken(Wt.jsxTagEnd);\n if ((34 === t || 39 === t) && e == qt) return this.jsx_readString(t);\n }\n\n return 60 === t && this.exprAllowed && 33 !== this.input.charCodeAt(this.pos + 1) ? (++this.pos, this.finishToken(Wt.jsxTagStart)) : _get(_getPrototypeOf(_class.prototype), \"readToken\", this).call(this, t);\n }\n }, {\n key: \"updateContext\",\n value: function updateContext(t) {\n if (this.type == jt.braceL) {\n var e = this.curContext();\n e == qt ? this.context.push(Dt.b_expr) : e == Jt ? this.context.push(Dt.b_tmpl) : _get(_getPrototypeOf(_class.prototype), \"updateContext\", this).call(this, t), this.exprAllowed = !0;\n } else {\n if (this.type !== jt.slash || t !== Wt.jsxTagStart) return _get(_getPrototypeOf(_class.prototype), \"updateContext\", this).call(this, t);\n this.context.length -= 2, this.context.push(Xt), this.exprAllowed = !1;\n }\n }\n }]);\n\n return _class;\n }(e);\n }({\n allowNamespaces: !1 !== t.allowNamespaces,\n allowNamespacedObjects: !!t.allowNamespacedObjects\n }, e);\n };\n};\n\nHt.tokTypes = Wt;\nvar Gt,\n Qt,\n Kt = (function (t, e) {\n Object.defineProperty(e, \"__esModule\", {\n value: !0\n }), e.DynamicImportKey = void 0;\n\n var i = function () {\n function t(t, e) {\n for (var i = 0; i < e.length; i++) {\n var s = e[i];\n s.enumerable = s.enumerable || !1, s.configurable = !0, \"value\" in s && (s.writable = !0), Object.defineProperty(t, s.key, s);\n }\n }\n\n return function (e, i, s) {\n return i && t(e.prototype, i), s && t(e, s), e;\n };\n }(),\n s = function t(e, i, s) {\n null === e && (e = Function.prototype);\n var r = Object.getOwnPropertyDescriptor(e, i);\n\n if (void 0 === r) {\n var n = Object.getPrototypeOf(e);\n return null === n ? void 0 : t(n, i, s);\n }\n\n if (\"value\" in r) return r.value;\n var a = r.get;\n return void 0 !== a ? a.call(s) : void 0;\n };\n\n e.default = function (t) {\n return function (e) {\n function n() {\n return function (t, e) {\n if (!(t instanceof n)) throw new TypeError(\"Cannot call a class as a function\");\n }(this), function (t, e) {\n if (!t) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return !e || \"object\" != typeof e && \"function\" != typeof e ? t : e;\n }(this, (n.__proto__ || Object.getPrototypeOf(n)).apply(this, arguments));\n }\n\n return function (t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function, not \" + typeof e);\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n enumerable: !1,\n writable: !0,\n configurable: !0\n }\n }), e && (Object.setPrototypeOf ? Object.setPrototypeOf(t, e) : t.__proto__ = e);\n }(n, t), i(n, [{\n key: \"parseStatement\",\n value: function value(t, e, i) {\n return this.type === Tt.tokTypes._import && function () {\n return /^(\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*\\(/.test(this.input.slice(this.pos));\n }.call(this) ? this.parseExpressionStatement(this.startNode(), this.parseExpression()) : s(n.prototype.__proto__ || Object.getPrototypeOf(n.prototype), \"parseStatement\", this).call(this, t, e, i);\n }\n }, {\n key: \"parseExprAtom\",\n value: function value(t) {\n return this.type === Tt.tokTypes._import ? function () {\n var t = this.startNode();\n return this.next(), this.type !== Tt.tokTypes.parenL && this.unexpected(), this.finishNode(t, r);\n }.call(this) : s(n.prototype.__proto__ || Object.getPrototypeOf(n.prototype), \"parseExprAtom\", this).call(this, t);\n }\n }]), n;\n }();\n };\n\n var r = e.DynamicImportKey = \"Import\";\n Tt.tokTypes._import.startsExpr = !0;\n}(Gt = {\n exports: {}\n}, Gt.exports), (Qt = Gt.exports) && Qt.__esModule && Object.prototype.hasOwnProperty.call(Qt, \"default\") ? Qt.default : Qt);\nvar $t = /(?:\\s|\\/\\/.*|\\/\\*[^]*?\\*\\/)*/g,\n Yt = Tt.tokTypes;\n\nfunction Zt(t) {\n if (this.eat(Yt.eq)) {\n var _e3 = this._inFieldValue;\n this._inFieldValue = !0, t.value = this.parseExpression(), this._inFieldValue = _e3;\n } else t.value = null;\n}\n\nfunction te() {\n var t = this.startNode();\n return t.name = this.value, this.next(), this.finishNode(t, \"PrivateName\"), \"never\" == this.options.allowReserved && this.checkUnreserved(t), t;\n}\n\nvar ee = new (0, Tt.TokenType)(\"privateName\");\nvar ie = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\nfunction se(t) {\n var e = \"\";\n t = t < 0 ? -t << 1 | 1 : t << 1;\n\n do {\n var i = 31 & t;\n (t >>= 5) > 0 && (i |= 32), e += ie[i];\n } while (t > 0);\n\n return e;\n}\n\nvar re = function re(t, e, i) {\n this.start = t, this.end = e, this.original = i, this.intro = \"\", this.outro = \"\", this.content = i, this.storeName = !1, this.edited = !1, Object.defineProperties(this, {\n previous: {\n writable: !0,\n value: null\n },\n next: {\n writable: !0,\n value: null\n }\n });\n};\n\nre.prototype.appendLeft = function (t) {\n this.outro += t;\n}, re.prototype.appendRight = function (t) {\n this.intro = this.intro + t;\n}, re.prototype.clone = function () {\n var t = new re(this.start, this.end, this.original);\n return t.intro = this.intro, t.outro = this.outro, t.content = this.content, t.storeName = this.storeName, t.edited = this.edited, t;\n}, re.prototype.contains = function (t) {\n return this.start < t && t < this.end;\n}, re.prototype.eachNext = function (t) {\n for (var e = this; e;) {\n t(e), e = e.next;\n }\n}, re.prototype.eachPrevious = function (t) {\n for (var e = this; e;) {\n t(e), e = e.previous;\n }\n}, re.prototype.edit = function (t, e, i) {\n return this.content = t, i || (this.intro = \"\", this.outro = \"\"), this.storeName = e, this.edited = !0, this;\n}, re.prototype.prependLeft = function (t) {\n this.outro = t + this.outro;\n}, re.prototype.prependRight = function (t) {\n this.intro = t + this.intro;\n}, re.prototype.split = function (t) {\n var e = t - this.start,\n i = this.original.slice(0, e),\n s = this.original.slice(e);\n this.original = i;\n var r = new re(t, this.end, s);\n return r.outro = this.outro, this.outro = \"\", this.end = t, this.edited ? (r.edit(\"\", !1), this.content = \"\") : this.content = i, r.next = this.next, r.next && (r.next.previous = r), r.previous = this, this.next = r, r;\n}, re.prototype.toString = function () {\n return this.intro + this.content + this.outro;\n}, re.prototype.trimEnd = function (t) {\n if (this.outro = this.outro.replace(t, \"\"), this.outro.length) return !0;\n var e = this.content.replace(t, \"\");\n return e.length ? (e !== this.content && this.split(this.start + e.length).edit(\"\", void 0, !0), !0) : (this.edit(\"\", void 0, !0), this.intro = this.intro.replace(t, \"\"), !!this.intro.length || void 0);\n}, re.prototype.trimStart = function (t) {\n if (this.intro = this.intro.replace(t, \"\"), this.intro.length) return !0;\n var e = this.content.replace(t, \"\");\n return e.length ? (e !== this.content && (this.split(this.end - e.length), this.edit(\"\", void 0, !0)), !0) : (this.edit(\"\", void 0, !0), this.outro = this.outro.replace(t, \"\"), !!this.outro.length || void 0);\n};\n\nvar ne = function ne() {\n throw new Error(\"Unsupported environment: `window.btoa` or `Buffer` should be supported.\");\n};\n\n\"undefined\" != typeof window && \"function\" == typeof window.btoa ? ne = function ne(t) {\n return window.btoa(unescape(encodeURIComponent(t)));\n} : \"function\" == typeof Buffer && (ne = function ne(t) {\n return Buffer.from(t, \"utf-8\").toString(\"base64\");\n});\n\nvar ae = function ae(t) {\n this.version = 3, this.file = t.file, this.sources = t.sources, this.sourcesContent = t.sourcesContent, this.names = t.names, this.mappings = function (t) {\n for (var e = 0, i = 0, s = 0, r = 0, n = \"\", a = 0; a < t.length; a++) {\n var o = t[a];\n\n if (a > 0 && (n += \";\"), 0 !== o.length) {\n for (var p = 0, h = [], c = 0, l = o; c < l.length; c++) {\n var u = l[c],\n d = se(u[0] - p);\n p = u[0], u.length > 1 && (d += se(u[1] - e) + se(u[2] - i) + se(u[3] - s), e = u[1], i = u[2], s = u[3]), 5 === u.length && (d += se(u[4] - r), r = u[4]), h.push(d);\n }\n\n n += h.join(\",\");\n }\n }\n\n return n;\n }(t.mappings);\n};\n\nfunction oe(t) {\n var e = t.split(\"\\n\"),\n i = e.filter(function (t) {\n return /^\\t+/.test(t);\n }),\n s = e.filter(function (t) {\n return /^ {2,}/.test(t);\n });\n if (0 === i.length && 0 === s.length) return null;\n if (i.length >= s.length) return \"\\t\";\n var r = s.reduce(function (t, e) {\n var i = /^ +/.exec(e)[0].length;\n return Math.min(i, t);\n }, Infinity);\n return new Array(r + 1).join(\" \");\n}\n\nfunction pe(t, e) {\n var i = t.split(/[\\/\\\\]/),\n s = e.split(/[\\/\\\\]/);\n\n for (i.pop(); i[0] === s[0];) {\n i.shift(), s.shift();\n }\n\n if (i.length) for (var r = i.length; r--;) {\n i[r] = \"..\";\n }\n return i.concat(s).join(\"/\");\n}\n\nae.prototype.toString = function () {\n return JSON.stringify(this);\n}, ae.prototype.toUrl = function () {\n return \"data:application/json;charset=utf-8;base64,\" + ne(this.toString());\n};\nvar he = Object.prototype.toString;\n\nfunction ce(t) {\n for (var e = t.split(\"\\n\"), i = [], s = 0, r = 0; s < e.length; s++) {\n i.push(r), r += e[s].length + 1;\n }\n\n return function (t) {\n for (var e = 0, s = i.length; e < s;) {\n var r = e + s >> 1;\n t < i[r] ? s = r : e = r + 1;\n }\n\n var n = e - 1;\n return {\n line: n,\n column: t - i[n]\n };\n };\n}\n\nvar le = function le(t) {\n this.hires = t, this.generatedCodeLine = 0, this.generatedCodeColumn = 0, this.raw = [], this.rawSegments = this.raw[this.generatedCodeLine] = [], this.pending = null;\n};\n\nle.prototype.addEdit = function (t, e, i, s) {\n if (e.length) {\n var r = [this.generatedCodeColumn, t, i.line, i.column];\n s >= 0 && r.push(s), this.rawSegments.push(r);\n } else this.pending && this.rawSegments.push(this.pending);\n\n this.advance(e), this.pending = null;\n}, le.prototype.addUneditedChunk = function (t, e, i, s, r) {\n for (var n = e.start, a = !0; n < e.end;) {\n (this.hires || a || r[n]) && this.rawSegments.push([this.generatedCodeColumn, t, s.line, s.column]), \"\\n\" === i[n] ? (s.line += 1, s.column = 0, this.generatedCodeLine += 1, this.raw[this.generatedCodeLine] = this.rawSegments = [], this.generatedCodeColumn = 0) : (s.column += 1, this.generatedCodeColumn += 1), n += 1, a = !1;\n }\n\n this.pending = [this.generatedCodeColumn, t, s.line, s.column];\n}, le.prototype.advance = function (t) {\n if (t) {\n var e = t.split(\"\\n\");\n\n if (e.length > 1) {\n for (var i = 0; i < e.length - 1; i++) {\n this.generatedCodeLine++, this.raw[this.generatedCodeLine] = this.rawSegments = [];\n }\n\n this.generatedCodeColumn = 0;\n }\n\n this.generatedCodeColumn += e[e.length - 1].length;\n }\n};\n\nvar ue = \"\\n\",\n de = {\n insertLeft: !1,\n insertRight: !1,\n storeName: !1\n},\n fe = function fe(t, e) {\n void 0 === e && (e = {});\n var i = new re(0, t.length, t);\n Object.defineProperties(this, {\n original: {\n writable: !0,\n value: t\n },\n outro: {\n writable: !0,\n value: \"\"\n },\n intro: {\n writable: !0,\n value: \"\"\n },\n firstChunk: {\n writable: !0,\n value: i\n },\n lastChunk: {\n writable: !0,\n value: i\n },\n lastSearchedChunk: {\n writable: !0,\n value: i\n },\n byStart: {\n writable: !0,\n value: {}\n },\n byEnd: {\n writable: !0,\n value: {}\n },\n filename: {\n writable: !0,\n value: e.filename\n },\n indentExclusionRanges: {\n writable: !0,\n value: e.indentExclusionRanges\n },\n sourcemapLocations: {\n writable: !0,\n value: {}\n },\n storedNames: {\n writable: !0,\n value: {}\n },\n indentStr: {\n writable: !0,\n value: oe(t)\n }\n }), this.byStart[0] = i, this.byEnd[t.length] = i;\n};\n\nfunction me(t) {\n var e = {};\n return Object.keys(t).forEach(function (i) {\n \"parent\" !== i && \"program\" !== i && \"keys\" !== i && \"__wrapped\" !== i && (e[i] = Array.isArray(t[i]) ? t[i].map(me) : t[i] && t[i].toJSON ? t[i].toJSON() : t[i]);\n }), e;\n}\n\nfe.prototype.addSourcemapLocation = function (t) {\n this.sourcemapLocations[t] = !0;\n}, fe.prototype.append = function (t) {\n if (\"string\" != typeof t) throw new TypeError(\"outro content must be a string\");\n return this.outro += t, this;\n}, fe.prototype.appendLeft = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byEnd[t];\n return i ? i.appendLeft(e) : this.intro += e, this;\n}, fe.prototype.appendRight = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byStart[t];\n return i ? i.appendRight(e) : this.outro += e, this;\n}, fe.prototype.clone = function () {\n for (var t = new fe(this.original, {\n filename: this.filename\n }), e = this.firstChunk, i = t.firstChunk = t.lastSearchedChunk = e.clone(); e;) {\n t.byStart[i.start] = i, t.byEnd[i.end] = i;\n var s = e.next,\n r = s && s.clone();\n r && (i.next = r, r.previous = i, i = r), e = s;\n }\n\n return t.lastChunk = i, this.indentExclusionRanges && (t.indentExclusionRanges = this.indentExclusionRanges.slice()), Object.keys(this.sourcemapLocations).forEach(function (e) {\n t.sourcemapLocations[e] = !0;\n }), t;\n}, fe.prototype.generateDecodedMap = function (t) {\n var e = this;\n t = t || {};\n var i = Object.keys(this.storedNames),\n s = new le(t.hires),\n r = ce(this.original);\n return this.intro && s.advance(this.intro), this.firstChunk.eachNext(function (t) {\n var n = r(t.start);\n t.intro.length && s.advance(t.intro), t.edited ? s.addEdit(0, t.content, n, t.storeName ? i.indexOf(t.original) : -1) : s.addUneditedChunk(0, t, e.original, n, e.sourcemapLocations), t.outro.length && s.advance(t.outro);\n }), {\n file: t.file ? t.file.split(/[\\/\\\\]/).pop() : null,\n sources: [t.source ? pe(t.file || \"\", t.source) : null],\n sourcesContent: t.includeContent ? [this.original] : [null],\n names: i,\n mappings: s.raw\n };\n}, fe.prototype.generateMap = function (t) {\n return new ae(this.generateDecodedMap(t));\n}, fe.prototype.getIndentString = function () {\n return null === this.indentStr ? \"\\t\" : this.indentStr;\n}, fe.prototype.indent = function (t, e) {\n var i = /^[^\\r\\n]/gm;\n if (\"[object Object]\" === he.call(t) && (e = t, t = void 0), \"\" === (t = void 0 !== t ? t : this.indentStr || \"\\t\")) return this;\n var s = {};\n (e = e || {}).exclude && (\"number\" == typeof e.exclude[0] ? [e.exclude] : e.exclude).forEach(function (t) {\n for (var e = t[0]; e < t[1]; e += 1) {\n s[e] = !0;\n }\n });\n\n var r = !1 !== e.indentStart,\n n = function n(e) {\n return r ? \"\" + t + e : (r = !0, e);\n };\n\n this.intro = this.intro.replace(i, n);\n\n for (var a = 0, o = this.firstChunk; o;) {\n var p = o.end;\n if (o.edited) s[a] || (o.content = o.content.replace(i, n), o.content.length && (r = \"\\n\" === o.content[o.content.length - 1]));else for (a = o.start; a < p;) {\n if (!s[a]) {\n var h = this.original[a];\n \"\\n\" === h ? r = !0 : \"\\r\" !== h && r && (r = !1, a === o.start ? o.prependRight(t) : (this._splitChunk(o, a), (o = o.next).prependRight(t)));\n }\n\n a += 1;\n }\n a = o.end, o = o.next;\n }\n\n return this.outro = this.outro.replace(i, n), this;\n}, fe.prototype.insert = function () {\n throw new Error(\"magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)\");\n}, fe.prototype.insertLeft = function (t, e) {\n return de.insertLeft || (console.warn(\"magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead\"), de.insertLeft = !0), this.appendLeft(t, e);\n}, fe.prototype.insertRight = function (t, e) {\n return de.insertRight || (console.warn(\"magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead\"), de.insertRight = !0), this.prependRight(t, e);\n}, fe.prototype.move = function (t, e, i) {\n if (i >= t && i <= e) throw new Error(\"Cannot move a selection inside itself\");\n this._split(t), this._split(e), this._split(i);\n var s = this.byStart[t],\n r = this.byEnd[e],\n n = s.previous,\n a = r.next,\n o = this.byStart[i];\n if (!o && r === this.lastChunk) return this;\n var p = o ? o.previous : this.lastChunk;\n return n && (n.next = a), a && (a.previous = n), p && (p.next = s), o && (o.previous = r), s.previous || (this.firstChunk = r.next), r.next || (this.lastChunk = s.previous, this.lastChunk.next = null), s.previous = p, r.next = o || null, p || (this.firstChunk = s), o || (this.lastChunk = r), this;\n}, fe.prototype.overwrite = function (t, e, i, s) {\n if (\"string\" != typeof i) throw new TypeError(\"replacement content must be a string\");\n\n for (; t < 0;) {\n t += this.original.length;\n }\n\n for (; e < 0;) {\n e += this.original.length;\n }\n\n if (e > this.original.length) throw new Error(\"end is out of bounds\");\n if (t === e) throw new Error(\"Cannot overwrite a zero-length range – use appendLeft or prependRight instead\");\n this._split(t), this._split(e), !0 === s && (de.storeName || (console.warn(\"The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string\"), de.storeName = !0), s = {\n storeName: !0\n });\n var r = void 0 !== s && s.storeName,\n n = void 0 !== s && s.contentOnly;\n\n if (r) {\n var a = this.original.slice(t, e);\n this.storedNames[a] = !0;\n }\n\n var o = this.byStart[t],\n p = this.byEnd[e];\n\n if (o) {\n if (e > o.end && o.next !== this.byStart[o.end]) throw new Error(\"Cannot overwrite across a split point\");\n\n if (o.edit(i, r, n), o !== p) {\n for (var h = o.next; h !== p;) {\n h.edit(\"\", !1), h = h.next;\n }\n\n h.edit(\"\", !1);\n }\n } else {\n var c = new re(t, e, \"\").edit(i, r);\n p.next = c, c.previous = p;\n }\n\n return this;\n}, fe.prototype.prepend = function (t) {\n if (\"string\" != typeof t) throw new TypeError(\"outro content must be a string\");\n return this.intro = t + this.intro, this;\n}, fe.prototype.prependLeft = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byEnd[t];\n return i ? i.prependLeft(e) : this.intro = e + this.intro, this;\n}, fe.prototype.prependRight = function (t, e) {\n if (\"string\" != typeof e) throw new TypeError(\"inserted content must be a string\");\n\n this._split(t);\n\n var i = this.byStart[t];\n return i ? i.prependRight(e) : this.outro = e + this.outro, this;\n}, fe.prototype.remove = function (t, e) {\n for (; t < 0;) {\n t += this.original.length;\n }\n\n for (; e < 0;) {\n e += this.original.length;\n }\n\n if (t === e) return this;\n if (t < 0 || e > this.original.length) throw new Error(\"Character is out of bounds\");\n if (t > e) throw new Error(\"end must be greater than start\");\n this._split(t), this._split(e);\n\n for (var i = this.byStart[t]; i;) {\n i.intro = \"\", i.outro = \"\", i.edit(\"\"), i = e > i.end ? this.byStart[i.end] : null;\n }\n\n return this;\n}, fe.prototype.lastChar = function () {\n if (this.outro.length) return this.outro[this.outro.length - 1];\n var t = this.lastChunk;\n\n do {\n if (t.outro.length) return t.outro[t.outro.length - 1];\n if (t.content.length) return t.content[t.content.length - 1];\n if (t.intro.length) return t.intro[t.intro.length - 1];\n } while (t = t.previous);\n\n return this.intro.length ? this.intro[this.intro.length - 1] : \"\";\n}, fe.prototype.lastLine = function () {\n var t = this.outro.lastIndexOf(ue);\n if (-1 !== t) return this.outro.substr(t + 1);\n var e = this.outro,\n i = this.lastChunk;\n\n do {\n if (i.outro.length > 0) {\n if (-1 !== (t = i.outro.lastIndexOf(ue))) return i.outro.substr(t + 1) + e;\n e = i.outro + e;\n }\n\n if (i.content.length > 0) {\n if (-1 !== (t = i.content.lastIndexOf(ue))) return i.content.substr(t + 1) + e;\n e = i.content + e;\n }\n\n if (i.intro.length > 0) {\n if (-1 !== (t = i.intro.lastIndexOf(ue))) return i.intro.substr(t + 1) + e;\n e = i.intro + e;\n }\n } while (i = i.previous);\n\n return -1 !== (t = this.intro.lastIndexOf(ue)) ? this.intro.substr(t + 1) + e : this.intro + e;\n}, fe.prototype.slice = function (t, e) {\n for (void 0 === t && (t = 0), void 0 === e && (e = this.original.length); t < 0;) {\n t += this.original.length;\n }\n\n for (; e < 0;) {\n e += this.original.length;\n }\n\n for (var i = \"\", s = this.firstChunk; s && (s.start > t || s.end <= t);) {\n if (s.start < e && s.end >= e) return i;\n s = s.next;\n }\n\n if (s && s.edited && s.start !== t) throw new Error(\"Cannot use replaced character \" + t + \" as slice start anchor.\");\n\n for (var r = s; s;) {\n !s.intro || r === s && s.start !== t || (i += s.intro);\n var n = s.start < e && s.end >= e;\n if (n && s.edited && s.end !== e) throw new Error(\"Cannot use replaced character \" + e + \" as slice end anchor.\");\n if (i += s.content.slice(r === s ? t - s.start : 0, n ? s.content.length + e - s.end : s.content.length), !s.outro || n && s.end !== e || (i += s.outro), n) break;\n s = s.next;\n }\n\n return i;\n}, fe.prototype.snip = function (t, e) {\n var i = this.clone();\n return i.remove(0, t), i.remove(e, i.original.length), i;\n}, fe.prototype._split = function (t) {\n if (!this.byStart[t] && !this.byEnd[t]) for (var e = this.lastSearchedChunk, i = t > e.end; e;) {\n if (e.contains(t)) return this._splitChunk(e, t);\n e = i ? this.byStart[e.end] : this.byEnd[e.start];\n }\n}, fe.prototype._splitChunk = function (t, e) {\n if (t.edited && t.content.length) {\n var i = ce(this.original)(e);\n throw new Error(\"Cannot split a chunk that has already been edited (\" + i.line + \":\" + i.column + ' – \"' + t.original + '\")');\n }\n\n var s = t.split(e);\n return this.byEnd[e] = t, this.byStart[e] = s, this.byEnd[s.end] = s, t === this.lastChunk && (this.lastChunk = s), this.lastSearchedChunk = t, !0;\n}, fe.prototype.toString = function () {\n for (var t = this.intro, e = this.firstChunk; e;) {\n t += e.toString(), e = e.next;\n }\n\n return t + this.outro;\n}, fe.prototype.isEmpty = function () {\n var t = this.firstChunk;\n\n do {\n if (t.intro.length && t.intro.trim() || t.content.length && t.content.trim() || t.outro.length && t.outro.trim()) return !1;\n } while (t = t.next);\n\n return !0;\n}, fe.prototype.length = function () {\n var t = this.firstChunk,\n e = 0;\n\n do {\n e += t.intro.length + t.content.length + t.outro.length;\n } while (t = t.next);\n\n return e;\n}, fe.prototype.trimLines = function () {\n return this.trim(\"[\\\\r\\\\n]\");\n}, fe.prototype.trim = function (t) {\n return this.trimStart(t).trimEnd(t);\n}, fe.prototype.trimEndAborted = function (t) {\n var e = new RegExp((t || \"\\\\s\") + \"+$\");\n if (this.outro = this.outro.replace(e, \"\"), this.outro.length) return !0;\n var i = this.lastChunk;\n\n do {\n var s = i.end,\n r = i.trimEnd(e);\n if (i.end !== s && (this.lastChunk === i && (this.lastChunk = i.next), this.byEnd[i.end] = i, this.byStart[i.next.start] = i.next, this.byEnd[i.next.end] = i.next), r) return !0;\n i = i.previous;\n } while (i);\n\n return !1;\n}, fe.prototype.trimEnd = function (t) {\n return this.trimEndAborted(t), this;\n}, fe.prototype.trimStartAborted = function (t) {\n var e = new RegExp(\"^\" + (t || \"\\\\s\") + \"+\");\n if (this.intro = this.intro.replace(e, \"\"), this.intro.length) return !0;\n var i = this.firstChunk;\n\n do {\n var s = i.end,\n r = i.trimStart(e);\n if (i.end !== s && (i === this.lastChunk && (this.lastChunk = i.next), this.byEnd[i.end] = i, this.byStart[i.next.start] = i.next, this.byEnd[i.next.end] = i.next), r) return !0;\n i = i.next;\n } while (i);\n\n return !1;\n}, fe.prototype.trimStart = function (t) {\n return this.trimStartAborted(t), this;\n};\n\nvar ge = function ge() {};\n\nfunction ye(t) {\n var e = [];\n return ve[t.type](e, t), e;\n}\n\nge.prototype.ancestor = function (t) {\n for (var e = this; t--;) {\n if (!(e = e.parent)) return null;\n }\n\n return e;\n}, ge.prototype.contains = function (t) {\n for (; t;) {\n if (t === this) return !0;\n t = t.parent;\n }\n\n return !1;\n}, ge.prototype.findLexicalBoundary = function () {\n return this.parent.findLexicalBoundary();\n}, ge.prototype.findNearest = function (t) {\n return \"string\" == typeof t && (t = new RegExp(\"^\" + t + \"$\")), t.test(this.type) ? this : this.parent.findNearest(t);\n}, ge.prototype.unparenthesizedParent = function () {\n for (var t = this.parent; t && \"ParenthesizedExpression\" === t.type;) {\n t = t.parent;\n }\n\n return t;\n}, ge.prototype.unparenthesize = function () {\n for (var t = this; \"ParenthesizedExpression\" === t.type;) {\n t = t.expression;\n }\n\n return t;\n}, ge.prototype.findScope = function (t) {\n return this.parent.findScope(t);\n}, ge.prototype.getIndentation = function () {\n return this.parent.getIndentation();\n}, ge.prototype.initialise = function (t) {\n for (var e = 0, i = this.keys; e < i.length; e += 1) {\n var s = this[i[e]];\n Array.isArray(s) ? s.forEach(function (e) {\n return e && e.initialise(t);\n }) : s && \"object\" == typeof s && s.initialise(t);\n }\n}, ge.prototype.toJSON = function () {\n return me(this);\n}, ge.prototype.toString = function () {\n return this.program.magicString.original.slice(this.start, this.end);\n}, ge.prototype.transpile = function (t, e) {\n for (var i = 0, s = this.keys; i < s.length; i += 1) {\n var r = this[s[i]];\n Array.isArray(r) ? r.forEach(function (i) {\n return i && i.transpile(t, e);\n }) : r && \"object\" == typeof r && r.transpile(t, e);\n }\n};\nvar ve = {\n Identifier: function Identifier(t, e) {\n t.push(e);\n },\n ObjectPattern: function ObjectPattern(t, e) {\n for (var i = 0, s = e.properties; i < s.length; i += 1) {\n var r = s[i];\n ve[r.type](t, r);\n }\n },\n Property: function Property(t, e) {\n ve[e.value.type](t, e.value);\n },\n ArrayPattern: function ArrayPattern(t, e) {\n for (var i = 0, s = e.elements; i < s.length; i += 1) {\n var r = s[i];\n r && ve[r.type](t, r);\n }\n },\n RestElement: function RestElement(t, e) {\n ve[e.argument.type](t, e.argument);\n },\n AssignmentPattern: function AssignmentPattern(t, e) {\n ve[e.left.type](t, e.left);\n }\n},\n xe = Object.create(null);\n\nfunction be(t) {\n this.parent = (t = t || {}).parent, this.isBlockScope = !!t.block, this.createDeclarationCallback = t.declare;\n\n for (var e = this; e.isBlockScope;) {\n e = e.parent;\n }\n\n this.functionScope = e, this.identifiers = [], this.declarations = Object.create(null), this.references = Object.create(null), this.blockScopedDeclarations = this.isBlockScope ? null : Object.create(null), this.aliases = Object.create(null);\n}\n\nfunction _e(t, e) {\n var i,\n s = t.split(\"\\n\"),\n r = s.length,\n n = 0;\n\n for (i = 0; i < r; i += 1) {\n var a = n + s[i].length + 1;\n if (a > e) return {\n line: i + 1,\n column: e - n,\n char: i\n };\n n = a;\n }\n\n throw new Error(\"Could not determine location of character\");\n}\n\nfunction Se(t, e) {\n for (var i = \"\"; e--;) {\n i += t;\n }\n\n return i;\n}\n\nfunction ke(t, e, i) {\n void 0 === i && (i = 1);\n var s = Math.max(e.line - 5, 0),\n r = e.line,\n n = String(r).length,\n a = t.split(\"\\n\").slice(s, r),\n o = a[a.length - 1].slice(0, e.column).replace(/\\t/g, \" \").length;\n return a.map(function (t, e) {\n return i = n, (r = String(e + s + 1)) + Se(\" \", i - r.length) + \" : \" + t.replace(/\\t/g, \" \");\n var i, r;\n }).join(\"\\n\") + \"\\n\" + Se(\" \", n + 3 + o) + Se(\"^\", i);\n}\n\n\"do if in for let new try var case else enum eval null this true void with await break catch class const false super throw while yield delete export import public return static switch typeof default extends finally package private continue debugger function arguments interface protected implements instanceof\".split(\" \").forEach(function (t) {\n return xe[t] = !0;\n}), be.prototype = {\n addDeclaration: function addDeclaration(t, e) {\n for (var i = 0, s = ye(t); i < s.length; i += 1) {\n var r = s[i],\n n = r.name,\n a = {\n name: n,\n node: r,\n kind: e,\n instances: []\n };\n this.declarations[n] = a, this.isBlockScope && (this.functionScope.blockScopedDeclarations[n] || (this.functionScope.blockScopedDeclarations[n] = []), this.functionScope.blockScopedDeclarations[n].push(a));\n }\n },\n addReference: function addReference(t) {\n this.consolidated ? this.consolidateReference(t) : this.identifiers.push(t);\n },\n consolidate: function consolidate() {\n for (var t = 0; t < this.identifiers.length; t += 1) {\n this.consolidateReference(this.identifiers[t]);\n }\n\n this.consolidated = !0;\n },\n consolidateReference: function consolidateReference(t) {\n var e = this.declarations[t.name];\n e ? e.instances.push(t) : (this.references[t.name] = !0, this.parent && this.parent.addReference(t));\n },\n contains: function contains(t) {\n return this.declarations[t] || !!this.parent && this.parent.contains(t);\n },\n createIdentifier: function createIdentifier(t) {\n \"number\" == typeof t && (t = t.toString());\n\n for (var e = t = t.replace(/\\s/g, \"\").replace(/\\[([^\\]]+)\\]/g, \"_$1\").replace(/[^a-zA-Z0-9_$]/g, \"_\").replace(/_{2,}/, \"_\"), i = 1; this.declarations[e] || this.references[e] || this.aliases[e] || e in xe;) {\n e = t + \"$\" + i++;\n }\n\n return this.aliases[e] = !0, e;\n },\n createDeclaration: function createDeclaration(t) {\n var e = this.createIdentifier(t);\n return this.createDeclarationCallback(e), e;\n },\n findDeclaration: function findDeclaration(t) {\n return this.declarations[t] || this.parent && this.parent.findDeclaration(t);\n },\n resolveName: function resolveName(t) {\n var e = this.findDeclaration(t);\n return e ? e.name : t;\n }\n};\n\nvar we = function (t) {\n function e(e, i) {\n if (t.call(this, e), this.name = \"CompileError\", i) {\n var s = i.program.magicString.original,\n r = _e(s, i.start);\n\n this.message = e + \" (\" + r.line + \":\" + r.column + \")\", this.stack = new t().stack.replace(new RegExp(\".+new \" + this.name + \".+\\\\n\", \"m\"), \"\"), this.loc = r, this.snippet = ke(s, r, i.end - i.start);\n }\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.toString = function () {\n return this.name + \": \" + this.message + \"\\n\" + this.snippet;\n }, e.missingTransform = function (t, i, s, r) {\n throw void 0 === r && (r = null), new e(\"Transforming \" + t + \" is not \" + (r ? \"fully supported\" : \"implemented\") + \". Use `transforms: { \" + i + \": false }` to skip transformation and disable this error\" + (r ? \", or `transforms: { \" + r + \": true }` if you know what you're doing\" : \"\") + \".\", s);\n }, e;\n}(Error);\n\nfunction Ee(t, e) {\n for (var i = 0; i < t.length; i += 1) {\n if (e(t[i], i)) return i;\n }\n\n return -1;\n}\n\nvar Ce = {\n Identifier: Ie,\n AssignmentPattern: function AssignmentPattern(t, e, i, s, r, n, a) {\n var o = \"Identifier\" === s.left.type,\n p = o ? s.left.name : r;\n n || a.push(function (e, i, r) {\n t.prependRight(s.left.end, i + \"if ( \" + p + \" === void 0 ) \" + p), t.move(s.left.end, s.right.end, e), t.appendLeft(s.right.end, r);\n }), o || Ae(t, e, i, s.left, r, n, a);\n },\n ArrayPattern: function ArrayPattern(t, e, i, s, r, n, a) {\n var o = s.start;\n s.elements.forEach(function (s, p) {\n s && (\"RestElement\" === s.type ? Ne(t, e, i, o, s.argument, r + \".slice(\" + p + \")\", n, a) : Ne(t, e, i, o, s, r + \"[\" + p + \"]\", n, a), o = s.end);\n }), t.remove(o, s.end);\n },\n ObjectPattern: Le\n};\n\nfunction Ae(t, e, i, s, r, n, a) {\n Ce[s.type](t, e, i, s, r, n, a);\n}\n\nfunction Ie(t, e, i, s, r, n, a) {\n a.push(function (e, a, o) {\n t.overwrite(s.start, s.end, (n ? a : a + \"var \") + i(s) + \" = \" + r + o), t.move(s.start, s.end, e);\n });\n}\n\nfunction Le(t, e, i, s, r, n, a) {\n var o = this,\n p = s.start,\n h = [];\n s.properties.forEach(function (s) {\n var c, l;\n if (\"Property\" === s.type) {\n if (l = s.value, s.computed || \"Identifier\" !== s.key.type) {\n if (s.computed || \"Literal\" !== s.key.type) {\n var u = t.slice(s.key.start, s.key.end);\n c = r + \"[\" + u + \"]\", h.push(\"String(\" + u + \")\");\n } else c = r + \"[\" + s.key.raw + \"]\", h.push(JSON.stringify(String(s.key.value)));\n } else c = r + \".\" + s.key.name, h.push('\"' + s.key.name + '\"');\n } else {\n if (\"RestElement\" !== s.type) throw new we(o, \"Unexpected node of type \" + s.type + \" in object pattern\");\n l = s.argument, c = e(\"rest\"), a.push(function (e, i, a) {\n var o = s.program.getObjectWithoutPropertiesHelper(t);\n t.overwrite(s.start, p = s.argument.start, (n ? i : i + \"var \") + c + \" = \" + o + \"( \" + r + \", [\" + h.join(\", \") + \"] )\" + a), t.move(s.start, p, e);\n });\n }\n Ne(t, e, i, p, l, c, n, a), p = s.end;\n }), t.remove(p, s.end);\n}\n\nfunction Ne(t, e, i, s, r, n, a, o) {\n switch (r.type) {\n case \"Identifier\":\n t.remove(s, r.start), Ie(t, 0, i, r, n, a, o);\n break;\n\n case \"MemberExpression\":\n t.remove(s, r.start), function (t, e, i, s, r, n, a) {\n a.push(function (e, i, n) {\n t.prependRight(s.start, i), t.appendLeft(s.end, \" = \" + r + n), t.move(s.start, s.end, e);\n });\n }(t, 0, 0, r, n, 0, o);\n break;\n\n case \"AssignmentPattern\":\n var p,\n h = \"Identifier\" === r.left.type;\n p = h ? i(r.left) : e(n), o.push(function (e, i, s) {\n a ? (t.prependRight(r.right.start, p + \" = \" + n + \", \" + p + \" = \" + p + \" === void 0 ? \"), t.appendLeft(r.right.end, \" : \" + p + s)) : (t.prependRight(r.right.start, i + \"var \" + p + \" = \" + n + \"; if ( \" + p + \" === void 0 ) \" + p + \" = \"), t.appendLeft(r.right.end, s)), t.move(r.right.start, r.right.end, e);\n }), h ? t.remove(s, r.right.start) : (t.remove(s, r.left.start), t.remove(r.left.end, r.right.start), Ne(t, e, i, s, r.left, p, a, o));\n break;\n\n case \"ObjectPattern\":\n t.remove(s, s = r.start);\n var c = n;\n r.properties.length > 1 && (c = e(n), o.push(function (e, i, o) {\n t.prependRight(r.start, (a ? \"\" : i + \"var \") + c + \" = \"), t.overwrite(r.start, s = r.start + 1, n), t.appendLeft(s, o), t.overwrite(r.start, s = r.start + 1, (a ? \"\" : i + \"var \") + c + \" = \" + n + o), t.move(r.start, s, e);\n })), Le(t, e, i, r, c, a, o);\n break;\n\n case \"ArrayPattern\":\n if (t.remove(s, s = r.start), r.elements.filter(Boolean).length > 1) {\n var l = e(n);\n o.push(function (e, i, o) {\n t.prependRight(r.start, (a ? \"\" : i + \"var \") + l + \" = \"), t.overwrite(r.start, s = r.start + 1, n, {\n contentOnly: !0\n }), t.appendLeft(s, o), t.move(r.start, s, e);\n }), r.elements.forEach(function (r, n) {\n r && (\"RestElement\" === r.type ? Ne(t, e, i, s, r.argument, l + \".slice(\" + n + \")\", a, o) : Ne(t, e, i, s, r, l + \"[\" + n + \"]\", a, o), s = r.end);\n });\n } else {\n var u = Ee(r.elements, Boolean),\n d = r.elements[u];\n \"RestElement\" === d.type ? Ne(t, e, i, s, d.argument, n + \".slice(\" + u + \")\", a, o) : Ne(t, e, i, s, d, n + \"[\" + u + \"]\", a, o), s = d.end;\n }\n\n t.remove(s, r.end);\n break;\n\n default:\n throw new Error(\"Unexpected node type in destructuring (\" + r.type + \")\");\n }\n}\n\nvar Pe = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.createScope = function () {\n var t = this;\n this.parentIsFunction = /Function/.test(this.parent.type), this.isFunctionBlock = this.parentIsFunction || \"Root\" === this.parent.type, this.scope = new be({\n block: !this.isFunctionBlock,\n parent: this.parent.findScope(!1),\n declare: function declare(e) {\n return t.createdDeclarations.push(e);\n }\n }), this.parentIsFunction && this.parent.params.forEach(function (e) {\n t.scope.addDeclaration(e, \"param\");\n });\n }, e.prototype.initialise = function (t) {\n this.thisAlias = null, this.argumentsAlias = null, this.defaultParameters = [], this.createdDeclarations = [], this.scope || this.createScope(), this.body.forEach(function (e) {\n return e.initialise(t);\n }), this.scope.consolidate();\n }, e.prototype.findLexicalBoundary = function () {\n return \"Program\" === this.type ? this : /^Function/.test(this.parent.type) ? this : this.parent.findLexicalBoundary();\n }, e.prototype.findScope = function (t) {\n return t && !this.isFunctionBlock ? this.parent.findScope(t) : this.scope;\n }, e.prototype.getArgumentsAlias = function () {\n return this.argumentsAlias || (this.argumentsAlias = this.scope.createIdentifier(\"arguments\")), this.argumentsAlias;\n }, e.prototype.getArgumentsArrayAlias = function () {\n return this.argumentsArrayAlias || (this.argumentsArrayAlias = this.scope.createIdentifier(\"argsArray\")), this.argumentsArrayAlias;\n }, e.prototype.getThisAlias = function () {\n return this.thisAlias || (this.thisAlias = this.scope.createIdentifier(\"this\")), this.thisAlias;\n }, e.prototype.getIndentation = function () {\n if (void 0 === this.indentation) {\n for (var t = this.program.magicString.original, e = this.synthetic || !this.body.length, i = e ? this.start : this.body[0].start; i && \"\\n\" !== t[i];) {\n i -= 1;\n }\n\n for (this.indentation = \"\";;) {\n var s = t[i += 1];\n if (\" \" !== s && \"\\t\" !== s) break;\n this.indentation += s;\n }\n\n for (var r = this.program.magicString.getIndentString(), n = this.parent; n;) {\n \"constructor\" !== n.kind || n.parent.parent.superClass || (this.indentation = this.indentation.replace(r, \"\")), n = n.parent;\n }\n\n e && (this.indentation += r);\n }\n\n return this.indentation;\n }, e.prototype.transpile = function (e, i) {\n var s,\n r,\n n = this,\n a = this.getIndentation(),\n o = [];\n if (this.argumentsAlias && o.push(function (t, i, s) {\n e.appendLeft(t, i + \"var \" + n.argumentsAlias + \" = arguments\" + s);\n }), this.thisAlias && o.push(function (t, i, s) {\n e.appendLeft(t, i + \"var \" + n.thisAlias + \" = this\" + s);\n }), this.argumentsArrayAlias && o.push(function (t, i, s) {\n var r = n.scope.createIdentifier(\"i\");\n e.appendLeft(t, i + \"var \" + r + \" = arguments.length, \" + n.argumentsArrayAlias + \" = Array(\" + r + \");\\n\" + a + \"while ( \" + r + \"-- ) \" + n.argumentsArrayAlias + \"[\" + r + \"] = arguments[\" + r + \"]\" + s);\n }), /Function/.test(this.parent.type) ? this.transpileParameters(this.parent.params, e, i, a, o) : \"CatchClause\" === this.parent.type && this.transpileParameters([this.parent.param], e, i, a, o), i.letConst && this.isFunctionBlock && this.transpileBlockScopedIdentifiers(e), t.prototype.transpile.call(this, e, i), this.createdDeclarations.length && o.push(function (t, i, s) {\n var r = i + \"var \" + n.createdDeclarations.join(\", \") + s;\n e.appendLeft(t, r);\n }), this.synthetic) if (\"ArrowFunctionExpression\" === this.parent.type) {\n var p = this.body[0];\n o.length ? (e.appendLeft(this.start, \"{\").prependRight(this.end, this.parent.getIndentation() + \"}\"), e.prependRight(p.start, \"\\n\" + a + \"return \"), e.appendLeft(p.end, \";\\n\")) : i.arrow && (e.prependRight(p.start, \"{ return \"), e.appendLeft(p.end, \"; }\"));\n } else o.length && e.prependRight(this.start, \"{\").appendLeft(this.end, \"}\");\n s = (r = this.body[0]) && \"ExpressionStatement\" === r.type && \"Literal\" === r.expression.type && \"use strict\" === r.expression.value ? this.body[0].end : this.synthetic || \"Root\" === this.parent.type ? this.start : this.start + 1;\n var h = \"\\n\" + a,\n c = \";\";\n o.forEach(function (t, e) {\n e === o.length - 1 && (c = \";\\n\"), t(s, h, c);\n });\n }, e.prototype.transpileParameters = function (t, e, i, s, r) {\n var n = this;\n t.forEach(function (a) {\n if (\"AssignmentPattern\" === a.type && \"Identifier\" === a.left.type) i.defaultParameter && r.push(function (t, i, s) {\n e.prependRight(a.left.end, i + \"if ( \" + a.left.name + \" === void 0 ) \" + a.left.name).move(a.left.end, a.right.end, t).appendLeft(a.right.end, s);\n });else if (\"RestElement\" === a.type) i.spreadRest && r.push(function (i, r, o) {\n var p = t[t.length - 2];\n if (p) e.remove(p ? p.end : a.start, a.end);else {\n for (var h = a.start, c = a.end; /\\s/.test(e.original[h - 1]);) {\n h -= 1;\n }\n\n for (; /\\s/.test(e.original[c]);) {\n c += 1;\n }\n\n e.remove(h, c);\n }\n var l = a.argument.name,\n u = n.scope.createIdentifier(\"len\"),\n d = t.length - 1;\n e.prependRight(i, d ? r + \"var \" + l + \" = [], \" + u + \" = arguments.length - \" + d + \";\\n\" + s + \"while ( \" + u + \"-- > 0 ) \" + l + \"[ \" + u + \" ] = arguments[ \" + u + \" + \" + d + \" ]\" + o : r + \"var \" + l + \" = [], \" + u + \" = arguments.length;\\n\" + s + \"while ( \" + u + \"-- ) \" + l + \"[ \" + u + \" ] = arguments[ \" + u + \" ]\" + o);\n });else if (\"Identifier\" !== a.type && i.parameterDestructuring) {\n var o = n.scope.createIdentifier(\"ref\");\n Ae(e, function (t) {\n return n.scope.createIdentifier(t);\n }, function (t) {\n return n.scope.resolveName(t.name);\n }, a, o, !1, r), e.prependRight(a.start, o);\n }\n });\n }, e.prototype.transpileBlockScopedIdentifiers = function (t) {\n var e = this;\n Object.keys(this.scope.blockScopedDeclarations).forEach(function (i) {\n for (var s = 0, r = e.scope.blockScopedDeclarations[i]; s < r.length; s += 1) {\n var n = r[s],\n a = !1;\n\n if (\"for.let\" === n.kind) {\n var o = n.node.findNearest(\"ForStatement\");\n\n if (o.shouldRewriteAsFunction) {\n var p = e.scope.createIdentifier(i),\n h = o.reassigned[i] ? e.scope.createIdentifier(i) : i;\n n.name = p, t.overwrite(n.node.start, n.node.end, p, {\n storeName: !0\n }), o.aliases[i] = {\n outer: p,\n inner: h\n };\n\n for (var c = 0, l = n.instances; c < l.length; c += 1) {\n var u = l[c],\n d = o.body.contains(u) ? h : p;\n i !== d && t.overwrite(u.start, u.end, d, {\n storeName: !0\n });\n }\n\n a = !0;\n }\n }\n\n if (!a) {\n var f = e.scope.createIdentifier(i);\n\n if (i !== f) {\n n.name = f, t.overwrite(n.node.start, n.node.end, f, {\n storeName: !0\n });\n\n for (var m = 0, g = n.instances; m < g.length; m += 1) {\n var y = g[m];\n y.rewritten = !0, t.overwrite(y.start, y.end, f, {\n storeName: !0\n });\n }\n }\n }\n }\n });\n }, e;\n}(ge);\n\nfunction Te(t) {\n return \"Identifier\" === t.type && \"arguments\" === t.name;\n}\n\nfunction Re(t, e, i) {\n for (var s = i.length; s--;) {\n var r = i[s];\n\n if (r && \"SpreadElement\" === r.type) {\n var n = r.argument;\n\n if (\"ArrayExpression\" === n.type) {\n var a = n.elements;\n\n if (!a.some(function (t) {\n return null === t;\n })) {\n var o = s === i.length - 1;\n 0 === a.length ? t.remove(o && 0 !== s ? i[s - 1].end : r.start, o ? e.end - 1 : i[s + 1].start) : (t.remove(r.start, a[0].start), t.remove(a[a.length - 1].end, o ? e.end - 1 : r.end)), i.splice.apply(i, [s, 1].concat(a)), s += a.length;\n }\n }\n }\n }\n}\n\nfunction Oe(t) {\n switch (t.type) {\n case \"ArrayExpression\":\n case \"CallExpression\":\n case \"Identifier\":\n case \"ParenthesizedExpression\":\n case \"ThisExpression\":\n return !1;\n\n default:\n return !0;\n }\n}\n\nfunction je(t, e, i, s, r) {\n for (var n = e.length, a = -1; n--;) {\n var o = e[n];\n o && \"SpreadElement\" === o.type && (Te(o.argument) && t.overwrite(o.argument.start, o.argument.end, s), a = n);\n }\n\n if (-1 === a) return !1;\n\n if (r) {\n for (n = 0; n < e.length; n += 1) {\n var p = e[n];\n \"SpreadElement\" === p.type ? t.remove(p.start, p.argument.start) : (t.prependRight(p.start, \"[\"), t.prependRight(p.end, \"]\"));\n }\n\n return !0;\n }\n\n var h = e[a],\n c = e[a - 1];\n if (c) t.overwrite(c.end, h.start, \" ].concat( \");else {\n var l;\n if (i !== h.start) (l = Oe(h.argument)) ? t.overwrite(i, h.start, \"( \") : t.remove(i, h.start);else {\n if (\"CallExpression\" !== h.parent.type) throw new we(\"Unsupported spread construct, please raise an issue at https://github.com/bublejs/buble/issues\", h);\n l = Oe(h.argument);\n }\n t.overwrite(h.end, e[1].start, l ? \" ).concat( \" : \".concat( \");\n }\n\n for (n = a; n < e.length; n += 1) {\n (h = e[n]) && (\"SpreadElement\" === h.type ? t.remove(h.start, h.argument.start) : (t.appendLeft(h.start, \"[\"), t.appendLeft(h.end, \"]\")));\n }\n\n return !0;\n}\n\nvar Ve = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (e.spreadRest && this.elements.length) for (var i = this.findLexicalBoundary(), s = this.elements.length; s--;) {\n var r = this.elements[s];\n r && \"SpreadElement\" === r.type && Te(r.argument) && (this.argumentsArrayAlias = i.getArgumentsArrayAlias());\n }\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.spreadRest) {\n if (Re(e, this, this.elements), this.elements.length) {\n var s = this.elements[this.elements.length - 1];\n s && /\\s*,/.test(e.original.slice(s.end, this.end)) && e.overwrite(s.end, this.end - 1, \" \");\n }\n\n if (1 === this.elements.length) {\n var r = this.elements[0];\n r && \"SpreadElement\" === r.type && (Te(r.argument) ? e.overwrite(this.start, this.end, \"[].concat( \" + this.argumentsArrayAlias + \" )\") : (e.overwrite(this.start, r.argument.start, \"[].concat( \"), e.overwrite(r.end, this.end, \" )\")));\n } else je(e, this.elements, this.start, this.argumentsArrayAlias) && e.overwrite(this.end - 1, this.end, \")\");\n }\n }, e;\n}(ge);\n\nfunction De(t, e) {\n for (; \")\" !== t.original[e];) {\n if (\",\" === t.original[e]) return void t.remove(e, e + 1);\n \"/\" === t.original[e] && (e = \"/\" === t.original[e + 1] ? t.original.indexOf(\"\\n\", e) : t.original.indexOf(\"*/\", e) + 1), e += 1;\n }\n}\n\nvar Be = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.async && e.asyncAwait && we.missingTransform(\"async arrow functions\", \"asyncAwait\", this), this.body.createScope(), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n for (var s = this.start, r = (this.body || this.params[0]).start - 1; \"(\" !== e.original[s] && s < r;) {\n ++s;\n }\n\n \"(\" !== e.original[s] && (s = -1);\n var n = -1 === s;\n\n if (i.arrow || this.needsArguments(i)) {\n for (var a = this.body.start; \"=\" !== e.original[a];) {\n a -= 1;\n }\n\n e.remove(a, this.body.start), t.prototype.transpile.call(this, e, i), n && (e.prependRight(this.params[0].start, \"(\"), e.appendLeft(this.params[0].end, \")\"));\n var o,\n p = this.parent && \"ExpressionStatement\" === this.parent.type,\n h = p ? \"!\" : \"\";\n this.async && (h += \"async \"), h += \"function\", p || (h += \" \"), (o = n ? this.params[0].start : s) > this.start ? e.overwrite(this.start, o, h) : e.prependRight(this.start, h);\n } else t.prototype.transpile.call(this, e, i);\n\n i.trailingFunctionCommas && this.params.length && !n && De(e, this.params[this.params.length - 1].end);\n }, e.prototype.needsArguments = function (t) {\n return t.spreadRest && this.params.filter(function (t) {\n return \"RestElement\" === t.type;\n }).length > 0;\n }, e;\n}(ge);\n\nfunction Fe(t, e) {\n var i = e.findDeclaration(t.name);\n if (i && \"const\" === i.kind) throw new we(t.name + \" is read-only\", t);\n}\n\nvar Me = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (\"Identifier\" === this.left.type) {\n var i = this.findScope(!1).findDeclaration(this.left.name),\n s = i && i.node.ancestor(3);\n s && \"ForStatement\" === s.type && s.body.contains(this) && (s.reassigned[this.left.name] = !0);\n }\n\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n \"Identifier\" === this.left.type && Fe(this.left, this.findScope(!1)), \"**=\" === this.operator && i.exponentiation ? this.transpileExponentiation(e, i) : /Pattern/.test(this.left.type) && i.destructuring && this.transpileDestructuring(e), t.prototype.transpile.call(this, e, i);\n }, e.prototype.transpileDestructuring = function (t) {\n var e = this,\n i = this.findScope(!0),\n s = this.findScope(!1),\n r = i.createDeclaration(\"assign\");\n t.appendRight(this.left.end, \"(\" + r), t.appendLeft(this.right.end, \", \");\n var n = [];\n Ae(t, function (t) {\n return i.createDeclaration(t);\n }, function (t) {\n var e = s.resolveName(t.name);\n return Fe(t, s), e;\n }, this.left, r, !0, n);\n var a = \", \";\n n.forEach(function (t, i) {\n i === n.length - 1 && (a = \"\"), t(e.end, \"\", a);\n }), \"ExpressionStatement\" === this.unparenthesizedParent().type ? t.prependRight(this.end, \")\") : t.appendRight(this.end, \", \" + r + \")\");\n }, e.prototype.transpileExponentiation = function (t) {\n for (var e, i = this.findScope(!1), s = this.left.end; \"*\" !== t.original[s];) {\n s += 1;\n }\n\n t.remove(s, s + 2);\n var r = this.left.unparenthesize();\n if (\"Identifier\" === r.type) e = i.resolveName(r.name);else if (\"MemberExpression\" === r.type) {\n var n,\n a,\n o = !1,\n p = !1,\n h = this.findNearest(/(?:Statement|Declaration)$/),\n c = h.getIndentation();\n \"Identifier\" === r.property.type ? a = r.computed ? i.resolveName(r.property.name) : r.property.name : (a = i.createDeclaration(\"property\"), p = !0), \"Identifier\" === r.object.type ? n = i.resolveName(r.object.name) : (n = i.createDeclaration(\"object\"), o = !0), r.start === h.start ? o && p ? (t.prependRight(h.start, n + \" = \"), t.overwrite(r.object.end, r.property.start, \";\\n\" + c + a + \" = \"), t.overwrite(r.property.end, r.end, \";\\n\" + c + n + \"[\" + a + \"]\")) : o ? (t.prependRight(h.start, n + \" = \"), t.appendLeft(r.object.end, \";\\n\" + c), t.appendLeft(r.object.end, n)) : p && (t.prependRight(r.property.start, a + \" = \"), t.appendLeft(r.property.end, \";\\n\" + c), t.move(r.property.start, r.property.end, this.start), t.appendLeft(r.object.end, \"[\" + a + \"]\"), t.remove(r.object.end, r.property.start), t.remove(r.property.end, r.end)) : (o && p ? (t.prependRight(r.start, \"( \" + n + \" = \"), t.overwrite(r.object.end, r.property.start, \", \" + a + \" = \"), t.overwrite(r.property.end, r.end, \", \" + n + \"[\" + a + \"]\")) : o ? (t.prependRight(r.start, \"( \" + n + \" = \"), t.appendLeft(r.object.end, \", \" + n)) : p && (t.prependRight(r.property.start, \"( \" + a + \" = \"), t.appendLeft(r.property.end, \", \"), t.move(r.property.start, r.property.end, r.start), t.overwrite(r.object.end, r.property.start, \"[\" + a + \"]\"), t.remove(r.property.end, r.end)), p && t.appendLeft(this.end, \" )\")), e = n + (r.computed || p ? \"[\" + a + \"]\" : \".\" + a);\n }\n t.prependRight(this.right.start, \"Math.pow( \" + e + \", \"), t.appendLeft(this.right.end, \" )\");\n }, e;\n}(ge),\n Ue = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.asyncAwait && we.missingTransform(\"await\", \"asyncAwait\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n qe = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n \"**\" === this.operator && i.exponentiation && (e.prependRight(this.start, \"Math.pow( \"), e.overwrite(this.left.end, this.right.start, \", \"), e.appendLeft(this.end, \" )\")), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n Xe = /(?:For(?:In|Of)?|While)Statement/,\n Je = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function () {\n var t = this.findNearest(Xe),\n e = this.findNearest(\"SwitchCase\");\n t && (!e || t.depth > e.depth) && (t.canBreak = !0, this.loop = t);\n }, e.prototype.transpile = function (t) {\n if (this.loop && this.loop.shouldRewriteAsFunction) {\n if (this.label) throw new we(\"Labels are not currently supported in a loop with locally-scoped variables\", this);\n t.overwrite(this.start, this.start + 5, \"return 'break'\");\n }\n }, e;\n}(ge),\n We = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (e.spreadRest && this.arguments.length > 1) for (var i = this.findLexicalBoundary(), s = this.arguments.length; s--;) {\n var r = this.arguments[s];\n \"SpreadElement\" === r.type && Te(r.argument) && (this.argumentsArrayAlias = i.getArgumentsArrayAlias());\n }\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (i.spreadRest && this.arguments.length && Re(e, this, this.arguments), i.spreadRest && this.arguments.length) {\n var s,\n r = !1,\n n = this.arguments[0];\n\n if (1 === this.arguments.length ? \"SpreadElement\" === n.type && (e.remove(n.start, n.argument.start), r = !0) : r = je(e, this.arguments, n.start, this.argumentsArrayAlias), r) {\n var a = null;\n if (\"Super\" === this.callee.type ? a = this.callee : \"MemberExpression\" === this.callee.type && \"Super\" === this.callee.object.type && (a = this.callee.object), a || \"MemberExpression\" !== this.callee.type) s = \"void 0\";else if (\"Identifier\" === this.callee.object.type) s = this.callee.object.name;else {\n s = this.findScope(!0).createDeclaration(\"ref\");\n var o = this.callee.object;\n e.prependRight(o.start, \"(\" + s + \" = \"), e.appendLeft(o.end, \")\");\n }\n e.appendLeft(this.callee.end, \".apply\"), a ? (a.noCall = !0, this.arguments.length > 1 && (\"SpreadElement\" === n.type ? Oe(n.argument) && e.prependRight(n.start, \"( \") : e.prependRight(n.start, \"[ \"), e.appendLeft(this.arguments[this.arguments.length - 1].end, \" )\"))) : 1 === this.arguments.length ? e.prependRight(n.start, s + \", \") : (\"SpreadElement\" === n.type ? Oe(n.argument) ? e.appendLeft(n.start, s + \", ( \") : e.appendLeft(n.start, s + \", \") : e.appendLeft(n.start, s + \", [ \"), e.appendLeft(this.arguments[this.arguments.length - 1].end, \" )\"));\n }\n }\n\n i.trailingFunctionCommas && this.arguments.length && De(e, this.arguments[this.arguments.length - 1].end), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n ze = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i, s, r) {\n var n = this;\n\n if (i.classes) {\n var a = this.parent.name,\n o = e.getIndentString(),\n p = this.getIndentation() + (s ? o : \"\"),\n h = p + o,\n c = Ee(this.body, function (t) {\n return \"constructor\" === t.kind;\n }),\n l = this.body[c],\n u = \"\",\n d = \"\";\n\n if (this.body.length ? (e.remove(this.start, this.body[0].start), e.remove(this.body[this.body.length - 1].end, this.end)) : e.remove(this.start, this.end), l) {\n l.value.body.isConstructorBody = !0;\n var f = this.body[c + 1];\n c > 0 && (e.remove(this.body[c - 1].end, l.start), e.move(l.start, f ? f.start : this.end - 1, this.body[0].start)), s || e.appendLeft(l.end, \";\");\n }\n\n var m = [];\n this.body.forEach(function (t) {\n if (\"FieldDefinition\" === t.type && (m.push(t.computed ? \"this\" + e.slice(t.start, t.end) + \";\" : \"this.\" + e.slice(t.start, t.end) + \";\"), e.remove(t.start, t.end), \"\" !== e.byStart[t.end].content)) {\n for (var i = 0; i < e.byStart[t.end].content.length && -1 === e.byStart[t.end].content.slice(0, i).indexOf(\";\"); i++) {\n ;\n }\n\n i > 0 && e.remove(t.end, t.end + i);\n }\n });\n var g = !1 !== this.program.options.namedFunctionExpressions,\n y = g || this.parent.superClass || \"ClassDeclaration\" !== this.parent.type;\n\n if (this.parent.superClass) {\n var v = \"if ( \" + r + \" ) \" + a + \".__proto__ = \" + r + \";\\n\" + p + a + \".prototype = Object.create( \" + r + \" && \" + r + \".prototype );\\n\" + p + a + \".prototype.constructor = \" + a + \";\";\n u += l ? \"\\n\\n\" + p + v : (v = \"function \" + a + \" () {\" + (m.length ? \"\\n\" + h + m.join(\"\\n\" + h) + \"\\n\" + h : \"\") + (r ? \"\\n\" + h + r + \".apply(this, arguments);\\n\" + p + \"}\" : \"}\") + (s ? \"\" : \";\") + (this.body.length ? \"\\n\\n\" + p : \"\") + v) + \"\\n\\n\" + p;\n } else if (!l) {\n var x = \"function \" + (y ? a + \" \" : \"\") + \"() {\" + (m.length ? \"\\n\" + h + m.join(\"\\n\" + h) + \"\\n\" + p : \"\") + \"}\";\n \"ClassDeclaration\" === this.parent.type && (x += \";\"), this.body.length && (x += \"\\n\\n\" + p), u += x;\n }\n\n l && m.length && e.appendLeft(l.value.body.start + 1, \"\\n\" + h + m.join(\"\\n\" + h));\n\n var b,\n _,\n S = this.findScope(!1),\n k = [],\n w = [];\n\n if (this.body.forEach(function (t, s) {\n if (\"get\" !== t.kind && \"set\" !== t.kind || !i.getterSetter || we.missingTransform(\"getters and setters\", \"getterSetter\", t), \"FieldDefinition\" !== t.type) if (\"constructor\" !== t.kind) {\n t.static && e.remove(t.start, t.start + (\" \" == e.original[t.start + 6] ? 7 : 6));\n var r,\n o = \"method\" !== t.kind,\n h = t.key.name;\n (xe[h] || t.value.body.scope.references[h]) && (h = S.createIdentifier(h));\n var l = !1;\n\n if (t.computed || \"Literal\" !== t.key.type || (l = !0, t.computed = !0), o) {\n if (t.computed) throw new Error(\"Computed accessor properties are not currently supported\");\n e.remove(t.start, t.key.start), t.static ? (~w.indexOf(t.key.name) || w.push(t.key.name), _ || (_ = S.createIdentifier(\"staticAccessors\")), r = \"\" + _) : (~k.indexOf(t.key.name) || k.push(t.key.name), b || (b = S.createIdentifier(\"prototypeAccessors\")), r = \"\" + b);\n } else r = t.static ? \"\" + a : a + \".prototype\";\n\n t.computed || (r += \".\"), (c > 0 && s === c + 1 || 0 === s && c === n.body.length - 1) && (r = \"\\n\\n\" + p + r);\n var u = t.key.end;\n if (t.computed) if (l) e.prependRight(t.key.start, \"[\"), e.appendLeft(t.key.end, \"]\");else {\n for (; \"]\" !== e.original[u];) {\n u += 1;\n }\n\n u += 1;\n }\n var d = (o ? \".\" + t.kind : \"\") + \" = \" + (t.value.async ? \"async \" : \"\") + \"function\" + (t.value.generator ? \"* \" : \" \") + (t.computed || o || !g ? \"\" : h + \" \");\n e.remove(u, t.value.start), e.prependRight(t.value.start, d), e.appendLeft(t.end, \";\"), t.value.generator && e.remove(t.start, t.key.start);\n var f = t.key.start;\n if (t.computed && !l) for (; \"[\" != e.original[f];) {\n --f;\n }\n t.start < f ? e.overwrite(t.start, f, r) : e.prependRight(t.start, r);\n } else e.overwrite(t.key.start, t.key.end, \"function\" + (y ? \" \" + a : \"\"));\n }), k.length || w.length) {\n var E = [],\n C = [];\n k.length && (E.push(\"var \" + b + \" = { \" + k.map(function (t) {\n return t + \": { configurable: true }\";\n }).join(\",\") + \" };\"), C.push(\"Object.defineProperties( \" + a + \".prototype, \" + b + \" );\")), w.length && (E.push(\"var \" + _ + \" = { \" + w.map(function (t) {\n return t + \": { configurable: true }\";\n }).join(\",\") + \" };\"), C.push(\"Object.defineProperties( \" + a + \", \" + _ + \" );\")), l && (u += \"\\n\\n\" + p), u += E.join(\"\\n\" + p), l || (u += \"\\n\\n\" + p), d += \"\\n\\n\" + p + C.join(\"\\n\" + p);\n }\n\n l ? e.appendLeft(l.end, u) : e.prependRight(this.start, u), e.appendLeft(this.end, d);\n }\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n He = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.id ? (this.name = this.id.name, this.findScope(!0).addDeclaration(this.id, \"class\")) : this.name = this.findScope(!0).createIdentifier(\"defaultExport\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (t, e) {\n if (e.classes) {\n this.superClass || function (t, e) {\n var i = t.start,\n s = t.end,\n r = e.getIndentString(),\n n = r.length,\n a = i - n;\n t.program.indentExclusions[a] || e.original.slice(a, i) !== r || e.remove(a, i);\n\n for (var o, p = new RegExp(r + \"\\\\S\", \"g\"), h = e.original.slice(i, s); o = p.exec(h);) {\n var c = i + o.index;\n t.program.indentExclusions[c] || e.remove(c, c + n);\n }\n }(this.body, t);\n var i = this.superClass && (this.superClass.name || \"superclass\"),\n s = this.getIndentation(),\n r = s + t.getIndentString(),\n n = \"ExportDefaultDeclaration\" === this.parent.type;\n n && t.remove(this.parent.start, this.start);\n var a = this.start;\n this.id ? (t.overwrite(a, this.id.start, \"var \"), a = this.id.end) : t.prependLeft(a, \"var \" + this.name), this.superClass ? this.superClass.end === this.body.start ? (t.remove(a, this.superClass.start), t.appendLeft(a, \" = /*@__PURE__*/(function (\" + i + \") {\\n\" + r)) : (t.overwrite(a, this.superClass.start, \" = \"), t.overwrite(this.superClass.end, this.body.start, \"/*@__PURE__*/(function (\" + i + \") {\\n\" + r)) : a === this.body.start ? t.appendLeft(a, \" = \") : t.overwrite(a, this.body.start, \" = \"), this.body.transpile(t, e, !!this.superClass, i);\n var o = n ? \"\\n\\n\" + s + \"export default \" + this.name + \";\" : \"\";\n this.superClass ? (t.appendLeft(this.end, \"\\n\\n\" + r + \"return \" + this.name + \";\\n\" + s + \"}(\"), t.move(this.superClass.start, this.superClass.end, this.end), t.prependRight(this.end, \"));\" + o)) : o && t.prependRight(this.end, o);\n } else this.body.transpile(t, e, !1, null);\n }, e;\n}(ge),\n Ge = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.name = (this.id ? this.id.name : \"VariableDeclarator\" === this.parent.type ? this.parent.id.name : \"AssignmentExpression\" !== this.parent.type ? null : \"Identifier\" === this.parent.left.type ? this.parent.left.name : \"MemberExpression\" === this.parent.left.type ? this.parent.left.property.name : null) || this.findScope(!0).createIdentifier(\"anonymous\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (t, e) {\n if (e.classes) {\n var i = this.superClass && (this.superClass.name || \"superclass\"),\n s = this.getIndentation(),\n r = s + t.getIndentString();\n this.superClass ? (t.remove(this.start, this.superClass.start), t.remove(this.superClass.end, this.body.start), t.appendRight(this.start, \"/*@__PURE__*/(function (\" + i + \") {\\n\" + r)) : t.overwrite(this.start, this.body.start, \"/*@__PURE__*/(function () {\\n\" + r), this.body.transpile(t, e, !0, i);\n var n = \"\";\n this.superClass && (n = t.slice(this.superClass.start, this.superClass.end), t.remove(this.superClass.start, this.superClass.end)), t.appendLeft(this.end, \"\\n\\n\" + r + \"return \" + this.name + \";\\n\" + s + \"}(\" + n + \"))\");\n } else this.body.transpile(t, e, !1);\n }, e;\n}(ge),\n Qe = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n if (this.findNearest(Xe).shouldRewriteAsFunction) {\n if (this.label) throw new we(\"Labels are not currently supported in a loop with locally-scoped variables\", this);\n t.overwrite(this.start, this.start + 8, \"return\");\n }\n }, e;\n}(ge),\n Ke = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleExport && we.missingTransform(\"export\", \"moduleExport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n $e = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleExport && we.missingTransform(\"export\", \"moduleExport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n Ye = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return t || !this.createdScope ? this.parent.findScope(t) : this.body.scope;\n }, e.prototype.initialise = function (e) {\n if (this.body.createScope(), this.createdScope = !0, this.reassigned = Object.create(null), this.aliases = Object.create(null), this.thisRefs = [], t.prototype.initialise.call(this, e), e.letConst) for (var i = Object.keys(this.body.scope.declarations), s = i.length; s--;) {\n for (var r = this.body.scope.declarations[i[s]], n = r.instances.length; n--;) {\n var a = r.instances[n].findNearest(/Function/);\n\n if (a && a.depth > this.depth) {\n this.shouldRewriteAsFunction = !0;\n\n for (var o = 0, p = this.thisRefs; o < p.length; o += 1) {\n var h = p[o];\n h.alias = h.alias || h.findLexicalBoundary().getThisAlias();\n }\n\n break;\n }\n }\n\n if (this.shouldRewriteAsFunction) break;\n }\n }, e.prototype.transpile = function (e, i) {\n var s = \"ForOfStatement\" != this.type && (\"BlockStatement\" !== this.body.type || \"BlockStatement\" === this.body.type && this.body.synthetic);\n\n if (this.shouldRewriteAsFunction) {\n var r = this.getIndentation(),\n n = r + e.getIndentString(),\n a = this.args ? \" \" + this.args.join(\", \") + \" \" : \"\",\n o = this.params ? \" \" + this.params.join(\", \") + \" \" : \"\",\n p = this.findScope(!0),\n h = p.createIdentifier(\"loop\"),\n c = \"var \" + h + \" = function (\" + o + \") \" + (this.body.synthetic ? \"{\\n\" + r + e.getIndentString() : \"\"),\n l = (this.body.synthetic ? \"\\n\" + r + \"}\" : \"\") + \";\\n\\n\" + r;\n\n if (e.prependRight(this.body.start, c), e.appendLeft(this.body.end, l), e.move(this.start, this.body.start, this.body.end), this.canBreak || this.canReturn) {\n var u = p.createIdentifier(\"returned\"),\n d = \"{\\n\" + n + \"var \" + u + \" = \" + h + \"(\" + a + \");\\n\";\n this.canBreak && (d += \"\\n\" + n + \"if ( \" + u + \" === 'break' ) break;\"), this.canReturn && (d += \"\\n\" + n + \"if ( \" + u + \" ) return \" + u + \".v;\"), e.prependRight(this.body.end, d += \"\\n\" + r + \"}\");\n } else {\n var f = h + \"(\" + a + \");\";\n \"DoWhileStatement\" === this.type ? e.overwrite(this.start, this.body.start, \"do {\\n\" + n + f + \"\\n\" + r + \"}\") : e.prependRight(this.body.end, f);\n }\n } else s && (e.appendLeft(this.body.start, \"{ \"), e.prependRight(this.body.end, \" }\"));\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n Ze = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return t || !this.createdScope ? this.parent.findScope(t) : this.body.scope;\n }, e.prototype.transpile = function (e, i) {\n var s = this,\n r = this.getIndentation() + e.getIndentString();\n\n if (this.shouldRewriteAsFunction) {\n var n = \"VariableDeclaration\" === this.init.type ? this.init.declarations.map(function (t) {\n return ye(t.id);\n }) : [],\n a = this.aliases;\n this.args = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].outer : t;\n }), this.params = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].inner : t;\n });\n var o = Object.keys(this.reassigned).map(function (t) {\n return a[t].outer + \" = \" + a[t].inner + \";\";\n });\n o.length && (this.body.synthetic ? e.appendLeft(this.body.body[0].end, \"; \" + o.join(\" \")) : e.appendLeft(this.body.body[this.body.body.length - 1].end, \"\\n\\n\" + r + o.join(\"\\n\" + r)));\n }\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n}(Ye),\n ti = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return t || !this.createdScope ? this.parent.findScope(t) : this.body.scope;\n }, e.prototype.transpile = function (e, i) {\n var s = this,\n r = \"VariableDeclaration\" === this.left.type;\n\n if (this.shouldRewriteAsFunction) {\n var n = r ? this.left.declarations.map(function (t) {\n return ye(t.id);\n }) : [];\n this.args = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].outer : t;\n }), this.params = n.map(function (t) {\n return t in s.aliases ? s.aliases[t].inner : t;\n });\n }\n\n t.prototype.transpile.call(this, e, i);\n var a = r ? this.left.declarations[0].id : this.left;\n \"Identifier\" !== a.type && this.destructurePattern(e, a, r);\n }, e.prototype.destructurePattern = function (t, e, i) {\n var s = this.findScope(!0),\n r = this.getIndentation() + t.getIndentString(),\n n = s.createIdentifier(\"ref\"),\n a = this.body.body.length ? this.body.body[0].start : this.body.start + 1;\n t.move(e.start, e.end, a), t.prependRight(e.end, i ? n : \"var \" + n);\n var o = [];\n Ae(t, function (t) {\n return s.createIdentifier(t);\n }, function (t) {\n return s.resolveName(t.name);\n }, e, n, !1, o);\n var p = \";\\n\" + r;\n o.forEach(function (t, e) {\n e === o.length - 1 && (p = \";\\n\\n\" + r), t(a, \"\", p);\n });\n }, e;\n}(Ye),\n ei = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.forOf && !e.dangerousForOf && we.missingTransform(\"for-of statements\", \"forOf\", this, \"dangerousForOf\"), this.await && e.asyncAwait && we.missingTransform(\"for-await-of statements\", \"asyncAwait\", this), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.dangerousForOf) if (this.body.body[0]) {\n var s = this.findScope(!0),\n r = this.getIndentation(),\n n = r + e.getIndentString(),\n a = s.createIdentifier(\"i\"),\n o = s.createIdentifier(\"list\");\n this.body.synthetic && (e.prependRight(this.left.start, \"{\\n\" + n), e.appendLeft(this.body.body[0].end, \"\\n\" + r + \"}\"));\n var p = this.body.body[0].start;\n e.remove(this.left.end, this.right.start), e.move(this.left.start, this.left.end, p), e.prependRight(this.right.start, \"var \" + a + \" = 0, \" + o + \" = \"), e.appendLeft(this.right.end, \"; \" + a + \" < \" + o + \".length; \" + a + \" += 1\");\n var h = \"VariableDeclaration\" === this.left.type,\n c = h ? this.left.declarations[0].id : this.left;\n\n if (\"Identifier\" !== c.type) {\n var l = [],\n u = s.createIdentifier(\"ref\");\n Ae(e, function (t) {\n return s.createIdentifier(t);\n }, function (t) {\n return s.resolveName(t.name);\n }, c, u, !h, l);\n var d = \";\\n\" + n;\n l.forEach(function (t, e) {\n e === l.length - 1 && (d = \";\\n\\n\" + n), t(p, \"\", d);\n }), h ? (e.appendLeft(this.left.start + this.left.kind.length + 1, u), e.appendLeft(this.left.end, \" = \" + o + \"[\" + a + \"];\\n\" + n)) : e.appendLeft(this.left.end, \"var \" + u + \" = \" + o + \"[\" + a + \"];\\n\" + n);\n } else e.appendLeft(this.left.end, \" = \" + o + \"[\" + a + \"];\\n\\n\" + n);\n } else \"VariableDeclaration\" === this.left.type && \"var\" === this.left.kind ? (e.remove(this.start, this.left.start), e.appendLeft(this.left.end, \";\"), e.remove(this.left.end, this.end)) : e.remove(this.start, this.end);\n }, e;\n}(Ye),\n ii = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.generator && e.generator && we.missingTransform(\"generators\", \"generator\", this), this.async && e.asyncAwait && we.missingTransform(\"async functions\", \"asyncAwait\", this), this.body.createScope(), this.id && this.findScope(!0).addDeclaration(this.id, \"function\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i), i.trailingFunctionCommas && this.params.length && De(e, this.params[this.params.length - 1].end);\n }, e;\n}(ge),\n si = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.generator && e.generator && we.missingTransform(\"generators\", \"generator\", this), this.async && e.asyncAwait && we.missingTransform(\"async functions\", \"asyncAwait\", this), this.body.createScope(), this.id && this.body.scope.addDeclaration(this.id, \"function\"), t.prototype.initialise.call(this, e);\n var i,\n s = this.parent;\n if (e.conciseMethodProperty && \"Property\" === s.type && \"init\" === s.kind && s.method && \"Identifier\" === s.key.type ? i = s.key.name : e.classes && \"MethodDefinition\" === s.type && \"method\" === s.kind && \"Identifier\" === s.key.type ? i = s.key.name : this.id && \"Identifier\" === this.id.type && (i = this.id.alias || this.id.name), i) for (var r = 0, n = this.params; r < n.length; r += 1) {\n var a = n[r];\n\n if (\"Identifier\" === a.type && i === a.name) {\n var o = this.body.scope,\n p = o.declarations[i],\n h = o.createIdentifier(i);\n a.alias = h;\n\n for (var c = 0, l = p.instances; c < l.length; c += 1) {\n l[c].alias = h;\n }\n\n break;\n }\n }\n }, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i), i.trailingFunctionCommas && this.params.length && De(e, this.params[this.params.length - 1].end);\n }, e;\n}(ge),\n ri = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.findScope = function (t) {\n return this.parent.params && ~this.parent.params.indexOf(this) ? this.parent.body.scope : \"FunctionExpression\" === this.parent.type && this === this.parent.id ? this.parent.body.scope : this.parent.findScope(t);\n }, e.prototype.initialise = function (t) {\n if (function t(e, i) {\n return \"MemberExpression\" === e.type ? !e.computed && t(e.object, e) : \"Identifier\" === e.type ? !i || !/(Function|Class)Expression/.test(i.type) && (\"VariableDeclarator\" === i.type ? e === i.init : \"MemberExpression\" === i.type || \"MethodDefinition\" === i.type ? i.computed || e === i.object : \"ArrayPattern\" !== i.type && (\"Property\" === i.type ? \"ObjectPattern\" !== i.parent.type && (i.computed || e === i.value) : \"MethodDefinition\" !== i.type && (\"ExportSpecifier\" !== i.type || e === i.local))) : void 0;\n }(this, this.parent)) {\n if (t.arrow && \"arguments\" === this.name && !this.findScope(!1).contains(this.name)) {\n var e = this.findLexicalBoundary(),\n i = this.findNearest(\"ArrowFunctionExpression\"),\n s = this.findNearest(Xe);\n i && i.depth > e.depth && (this.alias = e.getArgumentsAlias()), s && s.body.contains(this) && s.depth > e.depth && (this.alias = e.getArgumentsAlias());\n }\n\n this.findScope(!1).addReference(this);\n }\n }, e.prototype.transpile = function (t) {\n this.alias && t.overwrite(this.start, this.end, this.alias, {\n storeName: !0,\n contentOnly: !0\n });\n }, e;\n}(ge),\n ni = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n (\"BlockStatement\" !== this.consequent.type || \"BlockStatement\" === this.consequent.type && this.consequent.synthetic) && (e.appendLeft(this.consequent.start, \"{ \"), e.prependRight(this.consequent.end, \" }\")), this.alternate && \"IfStatement\" !== this.alternate.type && (\"BlockStatement\" !== this.alternate.type || \"BlockStatement\" === this.alternate.type && this.alternate.synthetic) && (e.appendLeft(this.alternate.start, \"{ \"), e.prependRight(this.alternate.end, \" }\")), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n ai = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleImport && we.missingTransform(\"dynamic import expressions\", \"moduleImport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n oi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.moduleImport && we.missingTransform(\"import\", \"moduleImport\", this), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n pi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.findScope(!0).addDeclaration(this.local, \"import\"), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n hi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n this.findScope(!0).addDeclaration(this.local, \"import\"), t.prototype.initialise.call(this, e);\n }, e;\n}(ge),\n ci = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n var s,\n r = this.name;\n e.overwrite(r.start, this.value ? this.value.start : this.name.end, (/-/.test(s = r.name) ? \"'\" + s + \"'\" : s) + \": \" + (this.value ? \"\" : \"true\")), t.prototype.transpile.call(this, e, i);\n }, e;\n}(ge),\n li = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n var e,\n i = !0,\n s = this.parent.children[this.parent.children.length - 1];\n (s && \"JSXText\" === (e = s).type && !/\\S/.test(e.value) && /\\n/.test(e.value) || this.parent.openingElement.attributes.length) && (i = !1), t.overwrite(this.start, this.end, i ? \" )\" : \")\");\n }, e;\n}(ge),\n ui = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n var e,\n i = !0,\n s = this.parent.children[this.parent.children.length - 1];\n s && \"JSXText\" === (e = s).type && !/\\S/.test(e.value) && /\\n/.test(e.value) && (i = !1), t.overwrite(this.start, this.end, i ? \" )\" : \")\");\n }, e;\n}(ge);\n\nfunction di(t, e) {\n return t = t.replace(/\\u00a0/g, \" \"), e && /\\n/.test(t) && (t = t.replace(/\\s+$/, \"\")), t = t.replace(/^\\n\\r?\\s+/, \"\").replace(/\\s*\\n\\r?\\s*/gm, \" \"), JSON.stringify(t);\n}\n\nvar fi = function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i);\n var s = this.children.filter(function (t) {\n return \"JSXText\" !== t.type || /\\S/.test(t.raw) || !/\\n/.test(t.raw);\n });\n\n if (s.length) {\n var r,\n n = (this.openingElement || this.openingFragment).end;\n\n for (r = 0; r < s.length; r += 1) {\n var a = s[r];\n\n if (\"JSXExpressionContainer\" === a.type && \"JSXEmptyExpression\" === a.expression.type || e.appendLeft(n, \",\" + (\"\\n\" === e.original[n] && \"JSXText\" !== a.type ? \"\" : \" \")), \"JSXText\" === a.type) {\n var o = di(a.value, r === s.length - 1);\n e.overwrite(a.start, a.end, o);\n }\n\n n = a.end;\n }\n }\n }, e;\n}(ge),\n mi = /[\\u2028-\\u2029]/g,\n gi = {\n ArrayExpression: Ve,\n ArrowFunctionExpression: Be,\n AssignmentExpression: Me,\n AwaitExpression: Ue,\n BinaryExpression: qe,\n BreakStatement: Je,\n CallExpression: We,\n ClassBody: ze,\n ClassDeclaration: He,\n ClassExpression: Ge,\n ContinueStatement: Qe,\n DoWhileStatement: Ye,\n ExportNamedDeclaration: $e,\n ExportDefaultDeclaration: Ke,\n ForStatement: Ze,\n ForInStatement: ti,\n ForOfStatement: ei,\n FunctionDeclaration: ii,\n FunctionExpression: si,\n Identifier: ri,\n IfStatement: ni,\n Import: ai,\n ImportDeclaration: oi,\n ImportDefaultSpecifier: pi,\n ImportSpecifier: hi,\n JSXAttribute: ci,\n JSXClosingElement: li,\n JSXClosingFragment: ui,\n JSXElement: fi,\n JSXExpressionContainer: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n e.remove(this.start, this.expression.start), e.remove(this.expression.end, this.end), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n JSXFragment: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e;\n }(fi),\n JSXOpeningElement: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n t.prototype.transpile.call(this, e, i), e.overwrite(this.start, this.name.start, this.program.jsx + \"( \");\n var s = \"JSXIdentifier\" === this.name.type && this.name.name[0] === this.name.name[0].toLowerCase();\n s && e.prependRight(this.name.start, \"'\");\n var r = this.attributes.length,\n n = this.name.end;\n\n if (r) {\n var a,\n o,\n p,\n h = !1;\n\n for (a = 0; a < r; a += 1) {\n if (\"JSXSpreadAttribute\" === this.attributes[a].type) {\n h = !0;\n break;\n }\n }\n\n for (n = this.attributes[0].end, a = 0; a < r; a += 1) {\n var c = this.attributes[a];\n\n if (a > 0 && (c.start === n ? e.prependRight(n, \", \") : e.overwrite(n, c.start, \", \")), h && \"JSXSpreadAttribute\" !== c.type) {\n var l = this.attributes[a - 1],\n u = this.attributes[a + 1];\n l && \"JSXSpreadAttribute\" !== l.type || e.prependRight(c.start, \"{ \"), u && \"JSXSpreadAttribute\" !== u.type || e.appendLeft(c.end, \" }\");\n }\n\n n = c.end;\n }\n\n if (h) {\n if (1 === r) p = s ? \"',\" : \",\";else {\n if (!this.program.options.objectAssign) throw new we(\"Mixed JSX attributes ending in spread requires specified objectAssign option with 'Object.assign' or polyfill helper.\", this);\n p = s ? \"', \" + this.program.options.objectAssign + \"({},\" : \", \" + this.program.options.objectAssign + \"({},\", o = \")\";\n }\n } else p = s ? \"', {\" : \", {\", o = \" }\";\n e.prependRight(this.name.end, p), o && e.appendLeft(this.attributes[r - 1].end, o);\n } else e.appendLeft(this.name.end, s ? \"', null\" : \", null\"), n = this.name.end;\n\n this.selfClosing ? e.overwrite(n, this.end, this.attributes.length ? \")\" : \" )\") : e.remove(n, this.end);\n }, e;\n }(ge),\n JSXOpeningFragment: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (t) {\n t.overwrite(this.start, this.end, this.program.jsx + \"( React.Fragment, null\");\n }, e;\n }(ge),\n JSXSpreadAttribute: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n e.remove(this.start, this.argument.start), e.remove(this.argument.end, this.end), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n Literal: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function () {\n \"string\" == typeof this.value && this.program.indentExclusionElements.push(this);\n }, e.prototype.transpile = function (t, e) {\n e.numericLiteral && this.raw.match(/^0[bo]/i) && t.overwrite(this.start, this.end, String(this.value), {\n storeName: !0,\n contentOnly: !0\n }), \"string\" == typeof this.value && this.value.match(mi) && t.overwrite(this.start, this.end, this.raw.replace(mi, function (t) {\n return \"\\u2028\" == t ? \"\\\\u2028\" : \"\\\\u2029\";\n }), {\n contentOnly: !0\n });\n }, e;\n }(ge),\n MemberExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n i.reservedProperties && xe[this.property.name] && (e.overwrite(this.object.end, this.property.start, \"['\"), e.appendLeft(this.property.end, \"']\")), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n NewExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (e.spreadRest && this.arguments.length) for (var i = this.findLexicalBoundary(), s = this.arguments.length; s--;) {\n var r = this.arguments[s];\n\n if (\"SpreadElement\" === r.type && Te(r.argument)) {\n this.argumentsArrayAlias = i.getArgumentsArrayAlias();\n break;\n }\n }\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.spreadRest && this.arguments.length && Re(e, this, this.arguments), i.spreadRest && this.arguments.length) {\n var s = this.arguments[0];\n je(e, this.arguments, s.start, this.argumentsArrayAlias, !0) && (e.prependRight(this.start + \"new\".length, \" (Function.prototype.bind.apply(\"), e.overwrite(this.callee.end, s.start, \", [ null ].concat( \"), e.appendLeft(this.end, \" ))\"));\n }\n\n this.arguments.length && De(e, this.arguments[this.arguments.length - 1].end);\n }, e;\n }(ge),\n ObjectExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n var s;\n t.prototype.transpile.call(this, e, i);\n\n for (var r = this.start + 1, n = 0, a = 0, o = null, p = null, h = 0; h < this.properties.length; ++h) {\n var c = this.properties[h];\n\n if (\"SpreadElement\" === c.type) {\n var l = c.argument;\n \"ObjectExpression\" === l.type || \"Literal\" === l.type && \"string\" != typeof l.value ? \"ObjectExpression\" === l.type && l.properties.length > 0 ? (e.remove(c.start, l.properties[0].start), e.remove(l.properties[l.properties.length - 1].end, c.end), (s = this.properties).splice.apply(s, [h, 1].concat(l.properties)), h--) : (e.remove(c.start, h === this.properties.length - 1 ? c.end : this.properties[h + 1].start), this.properties.splice(h, 1), h--) : (n += 1, null === o && (o = h));\n } else c.computed && i.computedProperty && (a += 1, null === p && (p = h));\n }\n\n if (!n || i.objectRestSpread || a && i.computedProperty) {\n if (n) {\n if (!this.program.options.objectAssign) throw new we(\"Object spread operator requires specified objectAssign option with 'Object.assign' or polyfill helper.\", this);\n\n for (var u = this.properties.length; u--;) {\n var d = this.properties[u];\n\n if (\"Property\" === d.type && !a) {\n var f = this.properties[u - 1],\n m = this.properties[u + 1];\n f && \"Property\" === f.type || e.prependRight(d.start, \"{\"), m && \"Property\" === m.type || e.appendLeft(d.end, \"}\");\n }\n\n \"SpreadElement\" === d.type && (e.remove(d.start, d.argument.start), e.remove(d.argument.end, d.end));\n }\n\n r = this.properties[0].start, a ? \"SpreadElement\" === this.properties[0].type ? (e.overwrite(this.start, r, this.program.options.objectAssign + \"({}, \"), e.remove(this.end - 1, this.end), e.appendRight(this.end, \")\")) : (e.prependLeft(this.start, this.program.options.objectAssign + \"(\"), e.appendRight(this.end, \")\")) : (e.overwrite(this.start, r, this.program.options.objectAssign + \"({}, \"), e.overwrite(this.properties[this.properties.length - 1].end, this.end, \")\"));\n }\n } else n = 0, o = null;\n\n if (a && i.computedProperty) {\n var g,\n y,\n v = this.getIndentation();\n \"VariableDeclarator\" === this.parent.type && 1 === this.parent.parent.declarations.length && \"Identifier\" === this.parent.id.type ? (g = !0, y = this.parent.id.alias || this.parent.id.name) : \"AssignmentExpression\" === this.parent.type && \"ExpressionStatement\" === this.parent.parent.type && \"Identifier\" === this.parent.left.type ? (g = !0, y = this.parent.left.alias || this.parent.left.name) : \"AssignmentPattern\" === this.parent.type && \"Identifier\" === this.parent.left.type && (g = !0, y = this.parent.left.alias || this.parent.left.name), n && (g = !1), y = this.findScope(!1).resolveName(y);\n var x = r,\n b = this.end;\n g || (null === o || p < o ? (y = this.findScope(!0).createDeclaration(\"obj\"), e.prependRight(this.start, \"( \" + y + \" = \")) : y = null);\n\n for (var _, S = this.properties.length, k = !1, w = !0, E = 0; E < S; E += 1) {\n var C = this.properties[E],\n A = E > 0 ? this.properties[E - 1].end : x;\n\n if (\"Property\" === C.type && (C.computed || _ && !n)) {\n if (0 === E && (A = this.start + 1), _ = C, y) {\n var I = (g ? \";\\n\" + v + y : \", \" + y) + (\"Literal\" === C.key.type || C.computed ? \"\" : \".\");\n A < C.start ? e.overwrite(A, C.start, I) : e.prependRight(C.start, I);\n } else y = this.findScope(!0).createDeclaration(\"obj\"), e.appendRight(C.start, \"( \" + y + \" = {}, \" + y + (C.computed ? \"\" : \".\"));\n\n var L = C.key.end;\n\n if (C.computed) {\n for (; \"]\" !== e.original[L];) {\n L += 1;\n }\n\n L += 1;\n }\n\n \"Literal\" !== C.key.type || C.computed ? C.shorthand || C.method && !C.computed && i.conciseMethodProperty ? e.overwrite(C.key.start, C.key.end, e.slice(C.key.start, C.key.end).replace(/:/, \" =\")) : (C.value.start > L && e.remove(L, C.value.start), e.prependLeft(L, \" = \")) : e.overwrite(C.start, C.key.end + 1, \"[\" + e.slice(C.start, C.key.end) + \"] = \"), !C.method || !C.computed && i.conciseMethodProperty || (C.value.generator && e.remove(C.start, C.key.start), e.prependRight(C.value.start, \"function\" + (C.value.generator ? \"*\" : \"\") + \" \"));\n } else \"SpreadElement\" === C.type ? y && E > 0 && (_ || (_ = this.properties[E - 1]), e.appendLeft(_.end, \", \" + y + \" )\"), _ = null, y = null) : (!w && n && (e.prependRight(C.start, \"{\"), e.appendLeft(C.end, \"}\")), k = !0);\n\n if (w && (\"SpreadElement\" === C.type || C.computed)) {\n var N = k ? this.properties[this.properties.length - 1].end : this.end - 1;\n \",\" == e.original[N] && ++N;\n var P = e.slice(N, b);\n e.prependLeft(A, P), e.remove(N, b), w = !1;\n }\n\n var T = C.end;\n if (E < S - 1 && !k) for (; \",\" !== e.original[T];) {\n T += 1;\n } else E == S - 1 && (T = this.end);\n C.end != T && e.overwrite(C.end, T, \"\", {\n contentOnly: !0\n });\n }\n\n !g && y && e.appendLeft(_.end, \", \" + y + \" )\");\n }\n }, e;\n }(ge),\n Property: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n \"get\" !== this.kind && \"set\" !== this.kind || !e.getterSetter || we.missingTransform(\"getters and setters\", \"getterSetter\", this), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.conciseMethodProperty && !this.computed && \"ObjectPattern\" !== this.parent.type) if (this.shorthand) e.prependRight(this.start, this.key.name + \": \");else if (this.method) {\n var s = \"\";\n !1 !== this.program.options.namedFunctionExpressions && (s = \" \" + (s = \"Literal\" === this.key.type && \"number\" == typeof this.key.value ? \"\" : \"Identifier\" === this.key.type ? xe[this.key.name] || !/^[a-z_$][a-z0-9_$]*$/i.test(this.key.name) || this.value.body.scope.references[this.key.name] ? this.findScope(!0).createIdentifier(this.key.name) : this.key.name : this.findScope(!0).createIdentifier(this.key.value))), this.start < this.key.start && e.remove(this.start, this.key.start), e.appendLeft(this.key.end, \": \" + (this.value.async ? \"async \" : \"\") + \"function\" + (this.value.generator ? \"*\" : \"\") + s);\n }\n i.reservedProperties && xe[this.key.name] && (e.prependRight(this.key.start, \"'\"), e.appendLeft(this.key.end, \"'\"));\n }, e;\n }(ge),\n ReturnStatement: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n this.loop = this.findNearest(Xe), this.nearestFunction = this.findNearest(/Function/), this.loop && (!this.nearestFunction || this.loop.depth > this.nearestFunction.depth) && (this.loop.canReturn = !0, this.shouldWrap = !0), this.argument && this.argument.initialise(t);\n }, e.prototype.transpile = function (t, e) {\n var i = this.shouldWrap && this.loop && this.loop.shouldRewriteAsFunction;\n this.argument ? (i && t.prependRight(this.argument.start, \"{ v: \"), this.argument.transpile(t, e), i && t.appendLeft(this.argument.end, \" }\")) : i && t.appendLeft(this.start + 6, \" {}\");\n }, e;\n }(ge),\n Super: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n if (t.classes) {\n if (this.method = this.findNearest(\"MethodDefinition\"), !this.method) throw new we(\"use of super outside class method\", this);\n var e = this.findNearest(\"ClassBody\").parent;\n if (this.superClassName = e.superClass && (e.superClass.name || \"superclass\"), !this.superClassName) throw new we(\"super used in base class\", this);\n if (this.isCalled = \"CallExpression\" === this.parent.type && this === this.parent.callee, \"constructor\" !== this.method.kind && this.isCalled) throw new we(\"super() not allowed outside class constructor\", this);\n if (this.isMember = \"MemberExpression\" === this.parent.type, !this.isCalled && !this.isMember) throw new we(\"Unexpected use of `super` (expected `super(...)` or `super.*`)\", this);\n }\n\n if (t.arrow) {\n var i = this.findLexicalBoundary(),\n s = this.findNearest(\"ArrowFunctionExpression\"),\n r = this.findNearest(Xe);\n s && s.depth > i.depth && (this.thisAlias = i.getThisAlias()), r && r.body.contains(this) && r.depth > i.depth && (this.thisAlias = i.getThisAlias());\n }\n }, e.prototype.transpile = function (t, e) {\n if (e.classes) {\n t.overwrite(this.start, this.end, this.isCalled || this.method.static ? this.superClassName : this.superClassName + \".prototype\", {\n storeName: !0,\n contentOnly: !0\n });\n var i = this.isCalled ? this.parent : this.parent.parent;\n\n if (i && \"CallExpression\" === i.type) {\n this.noCall || t.appendLeft(i.callee.end, \".call\");\n var s = this.thisAlias || \"this\";\n i.arguments.length ? t.appendLeft(i.arguments[0].start, s + \", \") : t.appendLeft(i.end - 1, \"\" + s);\n }\n }\n }, e;\n }(ge),\n TaggedTemplateExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n e.templateString && !e.dangerousTaggedTemplateString && we.missingTransform(\"tagged template strings\", \"templateString\", this, \"dangerousTaggedTemplateString\"), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n if (i.templateString && i.dangerousTaggedTemplateString) {\n var s = this.quasi.expressions.concat(this.quasi.quasis).sort(function (t, e) {\n return t.start - e.start;\n }),\n r = this.program.body.scope,\n n = this.quasi.quasis.map(function (t) {\n return JSON.stringify(t.value.cooked);\n }).join(\", \"),\n a = this.program.templateLiteralQuasis[n];\n a || (a = r.createIdentifier(\"templateObject\"), e.prependLeft(this.program.prependAt, \"var \" + a + \" = Object.freeze([\" + n + \"]);\\n\"), this.program.templateLiteralQuasis[n] = a), e.overwrite(this.tag.end, s[0].start, \"(\" + a);\n var o = s[0].start;\n s.forEach(function (t) {\n \"TemplateElement\" === t.type ? e.remove(o, t.end) : e.overwrite(o, t.start, \", \"), o = t.end;\n }), e.overwrite(o, this.end, \")\");\n }\n\n t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n TemplateElement: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function () {\n this.program.indentExclusionElements.push(this);\n }, e;\n }(ge),\n TemplateLiteral: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.transpile = function (e, i) {\n if (t.prototype.transpile.call(this, e, i), i.templateString && \"TaggedTemplateExpression\" !== this.parent.type) {\n var s = this.expressions.concat(this.quasis).sort(function (t, e) {\n return t.start - e.start || t.end - e.end;\n }).filter(function (t, e) {\n return \"TemplateElement\" !== t.type || !!t.value.raw || !e;\n });\n\n if (s.length >= 3) {\n var r = s[0];\n \"TemplateElement\" === r.type && \"\" === r.value.raw && \"TemplateElement\" === s[2].type && s.shift();\n }\n\n var n = !(1 === this.quasis.length && 0 === this.expressions.length || \"TemplateLiteral\" === this.parent.type || \"AssignmentExpression\" === this.parent.type || \"AssignmentPattern\" === this.parent.type || \"VariableDeclarator\" === this.parent.type || \"BinaryExpression\" === this.parent.type && \"+\" === this.parent.operator);\n n && e.appendRight(this.start, \"(\");\n var a = this.start;\n s.forEach(function (t, i) {\n var s = 0 === i ? n ? \"(\" : \"\" : \" + \";\n if (\"TemplateElement\" === t.type) e.overwrite(a, t.end, s + JSON.stringify(t.value.cooked));else {\n var r = \"Identifier\" !== t.type;\n r && (s += \"(\"), e.remove(a, t.start), s && e.prependRight(t.start, s), r && e.appendLeft(t.end, \")\");\n }\n a = t.end;\n }), n && e.appendLeft(a, \")\"), e.overwrite(a, this.end, \"\", {\n contentOnly: !0\n });\n }\n }, e;\n }(ge),\n ThisExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n var e = this.findLexicalBoundary();\n if (t.letConst) for (var i = this.findNearest(Xe); i && i.depth > e.depth;) {\n i.thisRefs.push(this), i = i.parent.findNearest(Xe);\n }\n\n if (t.arrow) {\n var s = this.findNearest(\"ArrowFunctionExpression\");\n s && s.depth > e.depth && (this.alias = e.getThisAlias());\n }\n }, e.prototype.transpile = function (t) {\n this.alias && t.overwrite(this.start, this.end, this.alias, {\n storeName: !0,\n contentOnly: !0\n });\n }, e;\n }(ge),\n UpdateExpression: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n if (\"Identifier\" === this.argument.type) {\n var i = this.findScope(!1).findDeclaration(this.argument.name),\n s = i && i.node.ancestor(3);\n s && \"ForStatement\" === s.type && s.body.contains(this) && (s.reassigned[this.argument.name] = !0);\n }\n\n t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (e, i) {\n \"Identifier\" === this.argument.type && Fe(this.argument, this.findScope(!1)), t.prototype.transpile.call(this, e, i);\n }, e;\n }(ge),\n VariableDeclaration: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (t) {\n this.scope = this.findScope(\"var\" === this.kind), this.declarations.forEach(function (e) {\n return e.initialise(t);\n });\n }, e.prototype.transpile = function (t, e) {\n var i = this,\n s = this.getIndentation(),\n r = this.kind;\n\n if (e.letConst && \"var\" !== r && t.overwrite(this.start, this.start + this.kind.length, r = \"var\", {\n contentOnly: !0,\n storeName: !0\n }), e.destructuring && \"ForOfStatement\" !== this.parent.type && \"ForInStatement\" !== this.parent.type) {\n var n,\n a = this.start;\n this.declarations.forEach(function (r, o) {\n if (r.transpile(t, e), \"Identifier\" === r.id.type) o > 0 && \"Identifier\" !== i.declarations[o - 1].id.type && t.overwrite(a, r.id.start, \"var \");else {\n var p = Xe.test(i.parent.type);\n 0 === o ? t.remove(a, r.id.start) : t.overwrite(a, r.id.start, \";\\n\" + s);\n var h = \"Identifier\" === r.init.type && !r.init.rewritten,\n c = h ? r.init.alias || r.init.name : r.findScope(!0).createIdentifier(\"ref\");\n a = r.start;\n var l = [];\n h ? t.remove(r.id.end, r.end) : l.push(function (e, i, s) {\n t.prependRight(r.id.end, \"var \" + c), t.appendLeft(r.init.end, \"\" + s), t.move(r.id.end, r.end, e);\n });\n var u = r.findScope(!1);\n Ae(t, function (t) {\n return u.createIdentifier(t);\n }, function (t) {\n return u.resolveName(t.name);\n }, r.id, c, p, l);\n var d = p ? \"var \" : \"\",\n f = p ? \", \" : \";\\n\" + s;\n l.forEach(function (t, e) {\n o === i.declarations.length - 1 && e === l.length - 1 && (f = p ? \"\" : \";\"), t(r.start, 0 === e ? d : \"\", f);\n });\n }\n a = r.end, n = \"Identifier\" !== r.id.type;\n }), n && this.end > a && t.overwrite(a, this.end, \"\", {\n contentOnly: !0\n });\n } else this.declarations.forEach(function (i) {\n i.transpile(t, e);\n });\n }, e;\n }(ge),\n VariableDeclarator: function (t) {\n function e() {\n t.apply(this, arguments);\n }\n\n return t && (e.__proto__ = t), (e.prototype = Object.create(t && t.prototype)).constructor = e, e.prototype.initialise = function (e) {\n var i = this.parent.kind;\n \"let\" === i && \"ForStatement\" === this.parent.parent.type && (i = \"for.let\"), this.parent.scope.addDeclaration(this.id, i), t.prototype.initialise.call(this, e);\n }, e.prototype.transpile = function (t, e) {\n if (!this.init && e.letConst && \"var\" !== this.parent.kind) {\n var i = this.findNearest(/Function|^For(In|Of)?Statement|^(?:Do)?WhileStatement/);\n !i || /Function/.test(i.type) || this.isLeftDeclaratorOfLoop() || t.appendLeft(this.id.end, \" = (void 0)\");\n }\n\n this.id && this.id.transpile(t, e), this.init && this.init.transpile(t, e);\n }, e.prototype.isLeftDeclaratorOfLoop = function () {\n return this.parent && \"VariableDeclaration\" === this.parent.type && this.parent.parent && (\"ForInStatement\" === this.parent.parent.type || \"ForOfStatement\" === this.parent.parent.type) && this.parent.parent.left && this.parent.parent.left.declarations[0] === this;\n }, e;\n }(ge),\n WhileStatement: Ye\n},\n yi = {\n Program: [\"body\"],\n Literal: []\n},\n vi = {\n IfStatement: \"consequent\",\n ForStatement: \"body\",\n ForInStatement: \"body\",\n ForOfStatement: \"body\",\n WhileStatement: \"body\",\n DoWhileStatement: \"body\",\n ArrowFunctionExpression: \"body\"\n};\n\nfunction xi(t, e, i, s) {\n this.type = \"Root\", this.jsx = s.jsx || \"React.createElement\", this.options = s, this.source = t, this.magicString = new fe(t), this.ast = e, this.depth = 0, function t(e, i) {\n if (e) if (\"length\" in e) for (var s = e.length; s--;) {\n t(e[s], i);\n } else if (!e.__wrapped) {\n e.__wrapped = !0, yi[e.type] || (yi[e.type] = Object.keys(e).filter(function (t) {\n return \"object\" == typeof e[t];\n }));\n var r = vi[e.type];\n\n if (r && \"BlockStatement\" !== e[r].type) {\n var n = e[r];\n e[r] = {\n start: n.start,\n end: n.end,\n type: \"BlockStatement\",\n body: [n],\n synthetic: !0\n };\n }\n\n e.parent = i, e.program = i.program || i, e.depth = i.depth + 1, e.keys = yi[e.type], e.indentation = void 0;\n\n for (var a = 0, o = yi[e.type]; a < o.length; a += 1) {\n t(e[o[a]], e);\n }\n\n e.program.magicString.addSourcemapLocation(e.start), e.program.magicString.addSourcemapLocation(e.end), e.__proto__ = ((\"BlockStatement\" === e.type ? Pe : gi[e.type]) || ge).prototype;\n }\n }(this.body = e, this), this.body.__proto__ = Pe.prototype, this.templateLiteralQuasis = Object.create(null);\n\n for (var r = 0; r < this.body.body.length; ++r) {\n if (!this.body.body[r].directive) {\n this.prependAt = this.body.body[r].start;\n break;\n }\n }\n\n this.objectWithoutPropertiesHelper = null, this.indentExclusionElements = [], this.body.initialise(i), this.indentExclusions = Object.create(null);\n\n for (var n = 0, a = this.indentExclusionElements; n < a.length; n += 1) {\n for (var o = a[n], p = o.start; p < o.end; p += 1) {\n this.indentExclusions[p] = !0;\n }\n }\n\n this.body.transpile(this.magicString, i);\n}\n\nxi.prototype = {\n export: function _export(t) {\n return void 0 === t && (t = {}), {\n code: this.magicString.toString(),\n map: this.magicString.generateMap({\n file: t.file,\n source: t.source,\n includeContent: !1 !== t.includeContent\n })\n };\n },\n findNearest: function findNearest() {\n return null;\n },\n findScope: function findScope() {\n return null;\n },\n getObjectWithoutPropertiesHelper: function getObjectWithoutPropertiesHelper(t) {\n return this.objectWithoutPropertiesHelper || (this.objectWithoutPropertiesHelper = this.body.scope.createIdentifier(\"objectWithoutProperties\"), t.prependLeft(this.prependAt, \"function \" + this.objectWithoutPropertiesHelper + \" (obj, exclude) { var target = {}; for (var k in obj) if (Object.prototype.hasOwnProperty.call(obj, k) && exclude.indexOf(k) === -1) target[k] = obj[k]; return target; }\\n\")), this.objectWithoutPropertiesHelper;\n }\n};\nvar bi = M.extend(Kt, Ht(), function (t) {\n return /*#__PURE__*/function (_t4) {\n _inherits(_class2, _t4);\n\n var _super2 = _createSuper(_class2);\n\n function _class2() {\n _classCallCheck(this, _class2);\n\n return _super2.apply(this, arguments);\n }\n\n _createClass(_class2, [{\n key: \"getTokenFromCode\",\n value: function getTokenFromCode(t) {\n if (35 === t) {\n ++this.pos;\n\n var _t5 = this.readWord1();\n\n return this.finishToken(ee, _t5);\n }\n\n return _get(_getPrototypeOf(_class2.prototype), \"getTokenFromCode\", this).call(this, t);\n }\n }, {\n key: \"parseClass\",\n value: function parseClass(t, e) {\n this._privateBoundNamesStack = this._privateBoundNamesStack || [];\n var i = Object.create(this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1] || null);\n this._privateBoundNamesStack.push(i), this._unresolvedPrivateNamesStack = this._unresolvedPrivateNamesStack || [];\n var s = Object.create(null);\n\n this._unresolvedPrivateNamesStack.push(s);\n\n var r = _get(_getPrototypeOf(_class2.prototype), \"parseClass\", this).call(this, t, e);\n\n if (this._privateBoundNamesStack.pop(), this._unresolvedPrivateNamesStack.pop(), this._unresolvedPrivateNamesStack.length) Object.assign(this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length - 1], s);else {\n var _t6 = Object.keys(s);\n\n _t6.length && (_t6.sort(function (t, e) {\n return s[t] - s[e];\n }), this.raise(s[_t6[0]], \"Usage of undeclared private name\"));\n }\n return r;\n }\n }, {\n key: \"parseClassElement\",\n value: function parseClassElement(t) {\n if (this.eat(Yt.semi)) return null;\n var e = this.startNode();\n\n if (!(this.options.ecmaVersion >= 8) || this.type != ee) {\n if (this.isContextual(\"async\")) {\n $t.lastIndex = this.pos;\n\n var _t7 = $t.exec(this.input),\n _i3 = this.input.charAt(this.pos + _t7[0].length);\n\n if (\";\" === _i3 || \"=\" === _i3) return e.key = this.parseIdent(!0), e.computed = !1, Zt.call(this, e), this.finishNode(e, \"FieldDefinition\"), this.semicolon(), e;\n }\n\n return _get(_getPrototypeOf(_class2.prototype), \"parseClassElement\", this).apply(this, arguments);\n }\n\n return e.key = te.call(this), e.computed = !1, \"constructor\" == e.key.name && this.raise(e.start, \"Classes may not have a field named constructor\"), Object.prototype.hasOwnProperty.call(this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1], e.key.name) && this.raise(e.start, \"Duplicate private element\"), this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1][e.key.name] = !0, delete this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length - 1][e.key.name], Zt.call(this, e), this.finishNode(e, \"FieldDefinition\"), this.semicolon(), e;\n }\n }, {\n key: \"parseClassMethod\",\n value: function parseClassMethod(t, e, i, s) {\n return e || i || \"method\" != t.kind || t.static || this.options.ecmaVersion < 8 || this.type == Yt.parenL ? _get(_getPrototypeOf(_class2.prototype), \"parseClassMethod\", this).apply(this, arguments) : (Zt.call(this, t), delete t.kind, delete t.static, t = this.finishNode(t, \"FieldDefinition\"), this.semicolon(), t);\n }\n }, {\n key: \"parseSubscripts\",\n value: function parseSubscripts(t, e, i, s) {\n for (var _r;;) {\n if (!(_r = this.eat(Yt.bracketL)) && !this.eat(Yt.dot)) return _get(_getPrototypeOf(_class2.prototype), \"parseSubscripts\", this).call(this, t, e, i, s);\n {\n var _s3 = this.startNodeAt(e, i);\n\n _s3.object = t, _r ? _s3.property = this.parseExpression() : this.type == ee ? (_s3.property = te.call(this), this._privateBoundNamesStack.length && this._privateBoundNamesStack[this._privateBoundNamesStack.length - 1][_s3.property.name] || (this._unresolvedPrivateNamesStack[this._unresolvedPrivateNamesStack.length - 1][_s3.property.name] = _s3.property.start)) : _s3.property = this.parseIdent(!0), _s3.computed = Boolean(_r), _r && this.expect(Yt.bracketR), t = this.finishNode(_s3, \"MemberExpression\");\n }\n }\n }\n }, {\n key: \"parseMaybeUnary\",\n value: function parseMaybeUnary(t, e) {\n var i = _get(_getPrototypeOf(_class2.prototype), \"parseMaybeUnary\", this).call(this, t, e);\n\n return \"delete\" == i.operator && \"MemberExpression\" == i.argument.type && \"PrivateName\" == i.argument.property.type && this.raise(i.start, \"Private elements may not be deleted\"), i;\n }\n }, {\n key: \"parseIdent\",\n value: function parseIdent(t, e) {\n var i = _get(_getPrototypeOf(_class2.prototype), \"parseIdent\", this).call(this, t, e);\n\n return this._inFieldValue && \"arguments\" == i.name && this.raise(i.start, \"A class field initializer may not contain arguments\"), i;\n }\n }, {\n key: \"parseExprAtom\",\n value: function parseExprAtom(t) {\n var e = _get(_getPrototypeOf(_class2.prototype), \"parseExprAtom\", this).call(this, t);\n\n return this._inFieldValue && \"Super\" == e.type && this.raise(e.start, \"A class field initializer may not contain super\"), e;\n }\n }]);\n\n return _class2;\n }(t);\n}),\n _i = [\"getterSetter\", \"arrow\", \"classes\", \"computedProperty\", \"conciseMethodProperty\", \"defaultParameter\", \"destructuring\", \"forOf\", \"generator\", \"letConst\", \"moduleExport\", \"moduleImport\", \"numericLiteral\", \"parameterDestructuring\", \"spreadRest\", \"stickyRegExp\", \"templateString\", \"exponentiation\", \"reservedProperties\", \"trailingFunctionCommas\", \"asyncAwait\", \"objectRestSpread\"],\n Si = [\"dangerousTaggedTemplateString\", \"dangerousForOf\"];\n\nfunction ki(t, e) {\n var i;\n void 0 === e && (e = {});\n var s = null;\n\n try {\n i = bi.parse(t, {\n ecmaVersion: 10,\n preserveParens: !0,\n sourceType: \"module\",\n allowAwaitOutsideFunction: !0,\n allowReturnOutsideFunction: !0,\n allowHashBang: !0,\n onComment: function onComment(t, e) {\n if (!s) {\n var i = /@jsx\\s+([^\\s]+)/.exec(e);\n i && (s = i[1]);\n }\n }\n }), e.jsx = s || e.jsx;\n } catch (e) {\n throw e.snippet = ke(t, e.loc), e.toString = function () {\n return e.name + \": \" + e.message + \"\\n\" + e.snippet;\n }, e;\n }\n\n var r = Object.create(null);\n return _i.forEach(function (t) {\n r[t] = !0;\n }), Si.forEach(function (t) {\n r[t] = !0;\n }), Object.keys(e.transforms || {}).forEach(function (t) {\n if (\"modules\" === t) return \"moduleImport\" in e.transforms || (r.moduleImport = e.transforms.modules), void (\"moduleExport\" in e.transforms || (r.moduleExport = e.transforms.modules));\n if (!(t in r)) throw new Error(\"Unknown transform '\" + t + \"'\");\n r[t] = e.transforms[t];\n }), !0 === e.objectAssign && (e.objectAssign = \"Object.assign\"), new xi(t, i, r, e).export(e);\n}\n\nexport { _i as features, ki as transform };"],"sourceRoot":""} \ No newline at end of file diff --git a/sites/oteguide/404.html b/sites/oteguide/404.html index ac6929fc..b6331566 100644 --- a/sites/oteguide/404.html +++ b/sites/oteguide/404.html @@ -1,4 +1,4 @@ -
\ No newline at end of file diff --git a/sites/oteguide/app-55220dc7c065ea1bf3d7.js b/sites/oteguide/app-55220dc7c065ea1bf3d7.js deleted file mode 100644 index 2a6a7973..00000000 --- a/sites/oteguide/app-55220dc7c065ea1bf3d7.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! For license information please see app-55220dc7c065ea1bf3d7.js.LICENSE.txt */ -(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{"+ZDr":function(e,t,n){"use strict";var r=n("TqRt");t.__esModule=!0,t.withPrefix=m,t.withAssetPrefix=function(e){return m(e,g())},t.navigateTo=t.replace=t.push=t.navigate=t.default=void 0;var a=r(n("8OQS")),i=r(n("pVnL")),o=r(n("PJYZ")),s=r(n("VbXa")),c=r(n("17x9")),l=r(n("q1tI")),u=n("YwZP"),d=n("LYrO"),p=n("cu4x");t.parsePath=p.parsePath;var f=function(e){return null==e?void 0:e.startsWith("/")};function m(e,t){var n,r;if(void 0===t&&(t=h()),!y(e))return e;if(e.startsWith("./")||e.startsWith("../"))return e;var a=null!==(n=null!==(r=t)&&void 0!==r?r:g())&&void 0!==n?n:"/";return""+((null==a?void 0:a.endsWith("/"))?a.slice(0,-1):a)+(e.startsWith("/")?e:"/"+e)}var g=function(){return""},h=function(){return""},y=function(e){return e&&!e.startsWith("http://")&&!e.startsWith("https://")&&!e.startsWith("//")};var b=function(e,t){return"number"==typeof e?e:y(e)?f(e)?m(e):function(e,t){return f(e)?e:(0,d.resolve)(e,t)}(e,t):e},A={activeClassName:c.default.string,activeStyle:c.default.object,partiallyActive:c.default.bool},S=function(e){function t(t){var n;(n=e.call(this,t)||this).defaultGetProps=function(e){var t=e.isPartiallyCurrent,r=e.isCurrent;return(n.props.partiallyActive?t:r)?{className:[n.props.className,n.props.activeClassName].filter(Boolean).join(" "),style:(0,i.default)({},n.props.style,n.props.activeStyle)}:null};var r=!1;return"undefined"!=typeof window&&window.IntersectionObserver&&(r=!0),n.state={IOSupported:r},n.handleRef=n.handleRef.bind((0,o.default)(n)),n}(0,s.default)(t,e);var n=t.prototype;return n.componentDidUpdate=function(e,t){this.props.to===e.to||this.state.IOSupported||___loader.enqueue((0,p.parsePath)(b(this.props.to,window.location.pathname)).pathname)},n.componentDidMount=function(){this.state.IOSupported||___loader.enqueue((0,p.parsePath)(b(this.props.to,window.location.pathname)).pathname)},n.componentWillUnmount=function(){if(this.io){var e=this.io,t=e.instance,n=e.el;t.unobserve(n),t.disconnect()}},n.handleRef=function(e){var t,n,r,a=this;this.props.innerRef&&this.props.innerRef.hasOwnProperty("current")?this.props.innerRef.current=e:this.props.innerRef&&this.props.innerRef(e),this.state.IOSupported&&e&&(this.io=(t=e,n=function(){___loader.enqueue((0,p.parsePath)(b(a.props.to,window.location.pathname)).pathname)},(r=new window.IntersectionObserver((function(e){e.forEach((function(e){t===e.target&&(e.isIntersecting||e.intersectionRatio>0)&&(r.unobserve(t),r.disconnect(),n())}))}))).observe(t),{instance:r,el:t}))},n.render=function(){var e=this,t=this.props,n=t.to,r=t.getProps,o=void 0===r?this.defaultGetProps:r,s=t.onClick,c=t.onMouseEnter,d=(t.activeClassName,t.activeStyle,t.innerRef,t.partiallyActive,t.state),f=t.replace,m=(0,a.default)(t,["to","getProps","onClick","onMouseEnter","activeClassName","activeStyle","innerRef","partiallyActive","state","replace"]);return l.default.createElement(u.Location,null,(function(t){var r=t.location,a=b(n,r.pathname);return y(a)?l.default.createElement(u.Link,(0,i.default)({to:a,state:d,getProps:o,innerRef:e.handleRef,onMouseEnter:function(e){c&&c(e),___loader.hovering((0,p.parsePath)(a).pathname)},onClick:function(t){if(s&&s(t),!(0!==t.button||e.props.target||t.defaultPrevented||t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)){t.preventDefault();var n=f,r=encodeURI(a)===window.location.pathname;"boolean"!=typeof f&&r&&(n=!0),window.___navigate(a,{state:d,replace:n})}return!0}},m)):l.default.createElement("a",(0,i.default)({href:a},m))}))},t}(l.default.Component);S.propTypes=(0,i.default)({},A,{onClick:c.default.func,to:c.default.string.isRequired,replace:c.default.bool,state:c.default.object});var v=function(e,t,n){return console.warn('The "'+e+'" method is now deprecated and will be removed in Gatsby v'+n+'. Please use "'+t+'" instead.')},O=l.default.forwardRef((function(e,t){return l.default.createElement(S,(0,i.default)({innerRef:t},e))}));t.default=O;t.navigate=function(e,t){window.___navigate(b(e,window.location.pathname),t)};var C=function(e){v("push","navigate",3),window.___push(b(e,window.location.pathname))};t.push=C;t.replace=function(e){v("replace","navigate",3),window.___replace(b(e,window.location.pathname))};t.navigateTo=function(e){return v("navigateTo","navigate",3),C(e)}},"/hTd":function(e,t,n){"use strict";t.__esModule=!0,t.SessionStorage=void 0;var r=function(){function e(){}var t=e.prototype;return t.read=function(e,t){var n=this.getStateKey(e,t);try{var r=window.sessionStorage.getItem(n);return r?JSON.parse(r):0}catch(a){return window&&window.___GATSBY_REACT_ROUTER_SCROLL&&window.___GATSBY_REACT_ROUTER_SCROLL[n]?window.___GATSBY_REACT_ROUTER_SCROLL[n]:0}},t.save=function(e,t,n){var r=this.getStateKey(e,t),a=JSON.stringify(n);try{window.sessionStorage.setItem(r,a)}catch(i){window&&window.___GATSBY_REACT_ROUTER_SCROLL||(window.___GATSBY_REACT_ROUTER_SCROLL={}),window.___GATSBY_REACT_ROUTER_SCROLL[r]=JSON.parse(a)}},t.getStateKey=function(e,t){var n="@@scroll|"+e.pathname;return null==t?n:n+"|"+t},e}();t.SessionStorage=r},"284h":function(e,t,n){var r=n("cDf5");function a(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return a=function(){return e},e}e.exports=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var t=a();if(t&&t.has(e))return t.get(e);var n={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var s=i?Object.getOwnPropertyDescriptor(e,o):null;s&&(s.get||s.set)?Object.defineProperty(n,o,s):n[o]=e[o]}return n.default=e,t&&t.set(e,n),n}},"2mql":function(e,t,n){"use strict";var r=n("TOwV"),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},o={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return r.isMemo(e)?o:s[e.$$typeof]||a}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=o;var l=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=f(n);a&&a!==m&&e(t,a,r)}var o=u(n);d&&(o=o.concat(d(n)));for(var s=c(t),g=c(n),h=0;h0&&e[n-1]===t?e:e.concat(t)},p=function(e,t){var n=e.plain,r=Object.create(null),a=e.styles.reduce((function(e,n){var r=n.languages,a=n.style;return r&&!r.includes(t)||n.types.forEach((function(t){var n=c({},e[t],a);e[t]=n})),e}),r);return a.root=n,a.plain=c({},n,{backgroundColor:null}),a};function f(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&-1===t.indexOf(r)&&(n[r]=e[r]);return n}var m=function(e){function t(){for(var t=this,n=[],r=arguments.length;r--;)n[r]=arguments[r];e.apply(this,n),s(this,"getThemeDict",(function(e){if(void 0!==t.themeDict&&e.theme===t.prevTheme&&e.language===t.prevLanguage)return t.themeDict;t.prevTheme=e.theme,t.prevLanguage=e.language;var n=e.theme?p(e.theme,e.language):void 0;return t.themeDict=n})),s(this,"getLineProps",(function(e){var n=e.key,r=e.className,a=e.style,i=c({},f(e,["key","className","style","line"]),{className:"token-line",style:void 0,key:void 0}),o=t.getThemeDict(t.props);return void 0!==o&&(i.style=o.plain),void 0!==a&&(i.style=void 0!==i.style?c({},i.style,a):a),void 0!==n&&(i.key=n),r&&(i.className+=" "+r),i})),s(this,"getStyleForToken",(function(e){var n=e.types,r=e.empty,a=n.length,i=t.getThemeDict(t.props);if(void 0!==i){if(1===a&&"plain"===n[0])return r?{display:"inline-block"}:void 0;if(1===a&&!r)return i[n[0]];var o=r?{display:"inline-block"}:{},s=n.map((function(e){return i[e]}));return Object.assign.apply(Object,[o].concat(s))}})),s(this,"getTokenProps",(function(e){var n=e.key,r=e.className,a=e.style,i=e.token,o=c({},f(e,["key","className","style","token"]),{className:"token "+i.types.join(" "),children:i.content,style:t.getStyleForToken(i),key:void 0});return void 0!==a&&(o.style=void 0!==o.style?c({},o.style,a):a),void 0!==n&&(o.key=n),r&&(o.className+=" "+r),o}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.render=function(){var e=this.props,t=e.Prism,n=e.language,r=e.code,a=e.children,i=this.getThemeDict(this.props),o=t.languages[n];return a({tokens:function(e){for(var t=[[]],n=[e],r=[0],a=[e.length],i=0,o=0,s=[],c=[s];o>-1;){for(;(i=r[o]++)0?f:["plain"],p=m):(f=d(f,m.type),m.alias&&(f=d(f,m.alias)),p=m.content),"string"==typeof p){var g=p.split(l),h=g.length;s.push({types:f,content:g[0]});for(var y=1;y>>0,1)},emit:function(t,n){(e[t]||[]).slice().map((function(e){e(n)})),(e["*"]||[]).slice().map((function(e){e(t,n)}))}}}();t.a=r},"7hJ6":function(e,t,n){"use strict";t.__esModule=!0,t.useScrollRestoration=t.ScrollContainer=t.ScrollContext=void 0;var r=n("Enzk");t.ScrollContext=r.ScrollHandler;var a=n("hd9s");t.ScrollContainer=a.ScrollContainer;var i=n("3uz+");t.useScrollRestoration=i.useScrollRestoration},"7ljp":function(e,t,n){"use strict";n.r(t),n.d(t,"MDXContext",(function(){return u})),n.d(t,"MDXProvider",(function(){return f})),n.d(t,"mdx",(function(){return h})),n.d(t,"useMDXComponents",(function(){return p})),n.d(t,"withMDXComponents",(function(){return d}));var r=n("q1tI"),a=n.n(r);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(){return(o=Object.assign||function(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var u=a.a.createContext({}),d=function(e){return function(t){var n=p(t.components);return a.a.createElement(e,o({},t,{components:n}))}},p=function(e){var t=a.a.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):c(c({},t),e)),n},f=function(e){var t=p(e.components);return a.a.createElement(u.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.a.createElement(a.a.Fragment,{},t)}},g=a.a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,o=e.parentName,s=l(e,["components","mdxType","originalType","parentName"]),u=p(n),d=r,f=u["".concat(o,".").concat(d)]||u[d]||m[d]||i;return n?a.a.createElement(f,c(c({ref:t},s),{},{components:n})):a.a.createElement(f,c({ref:t},s))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=g;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var l=2;l=0||(a[n]=e[n]);return a}},"94VI":function(e,t){t.polyfill=function(e){return e}},"9Xx/":function(e,t,n){"use strict";n.d(t,"c",(function(){return c})),n.d(t,"d",(function(){return l})),n.d(t,"a",(function(){return i})),n.d(t,"b",(function(){return o}));var r=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},l=c.state,u=c.replace,d=void 0!==u&&u;if("number"==typeof t)e.history.go(t);else{l=r({},l,{key:Date.now()+""});try{o||d?e.history.replaceState(l,null,t):e.history.pushState(l,null,t)}catch(f){e.location[d?"replace":"assign"](t)}}i=a(e),o=!0;var p=new Promise((function(e){return s=e}));return n.forEach((function(e){return e({location:i,action:"PUSH"})})),p}}},o=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=e.indexOf("?"),n={pathname:t>-1?e.substr(0,t):e,search:t>-1?e.substr(t):""},r=0,a=[n],i=[null];return{get location(){return a[r]},addEventListener:function(e,t){},removeEventListener:function(e,t){},history:{get entries(){return a},get index(){return r},get state(){return i[r]},pushState:function(e,t,n){var o=n.split("?"),s=o[0],c=o[1],l=void 0===c?"":c;r++,a.push({pathname:s,search:l.length?"?"+l:l}),i.push(e)},replaceState:function(e,t,n){var o=n.split("?"),s=o[0],c=o[1],l=void 0===c?"":c;a[r]={pathname:s,search:l},i[r]=e},go:function(e){var t=r+e;t<0||t>i.length-1||(r=t)}}}},s=!("undefined"==typeof window||!window.document||!window.document.createElement),c=i(s?window:o()),l=c.navigate},"9uj6":function(e,t,n){"use strict";var r=n("4qRI"),a=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|inert|itemProp|itemScope|itemType|itemID|itemRef|on|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,i=Object(r.a)((function(e){return a.test(e)||111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)<91}));t.a=i},BFUG:function(e,t){e.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuMywgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzNSAyNyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzUgMjc7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojRkZGRkZGO30KPC9zdHlsZT4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTE3LDcuMmwwLjEsMS4ybC0xLjMtMC4xYy00LjYtMC41LTguNi0yLjQtMTItNS41TDIuMSwxLjFMMS43LDIuM0MwLjgsNC44LDEuMyw3LjUsMy4yLDkuM2MxLDEsMC44LDEuMS0xLDAuNQoJQzEuNyw5LjcsMS4xLDkuNSwxLjEsOS42QzAuOSw5LjgsMS41LDExLjksMiwxMi44YzAuNywxLjIsMiwyLjQsMy41LDMuMWwxLjIsMC41bC0xLjUsMGMtMS40LDAtMS41LDAtMS4zLDAuNQoJYzAuNSwxLjUsMi41LDMuMiw0LjcsMy45bDEuNiwwLjVsLTEuNCwwLjhjLTIsMS4xLTQuNCwxLjctNi44LDEuOEMwLjksMjMuOSwwLDI0LDAsMjQuMWMwLDAuMiwzLjEsMS42LDQuOSwyLjEKCWM1LjQsMS41LDExLjgsMC45LDE2LjYtMS44YzMuNC0xLjksNi44LTUuNiw4LjQtOS4yYzAuOS0xLjksMS43LTUuNSwxLjctNy4xYzAtMS4xLDAuMS0xLjIsMS41LTIuNmMwLjgtMC44LDEuNi0xLjYsMS44LTEuOAoJYzAuMy0wLjUsMC4yLTAuNS0xLjEsMGMtMi4xLDAuNy0yLjUsMC42LTEuNC0wLjVjMC44LTAuOCwxLjctMi4xLDEuNy0yLjVjMC0wLjEtMC40LDAtMC44LDAuM2MtMC41LDAuMi0xLjUsMC42LTIuMiwwLjhsLTEuNCwwLjQKCWwtMS4yLTAuOGMtMC43LTAuNC0xLjYtMC45LTIuMS0xYy0xLjMtMC4zLTMuMy0wLjMtNC40LDAuMUMxOC44LDEuNCwxNi44LDQuMiwxNyw3LjJ6Ii8+Cjwvc3ZnPgo="},BOnt:function(e,t,n){"use strict";var r=n("TqRt"),a=n("Wbzz"),i=r(n("hqbx"));t.onClientEntry=function(e,t){void 0===t&&(t={}),(0,i.default)(window,t,(function(e){(0,a.navigate)(e)}))}},BfwJ:function(e,t,n){"use strict";n.r(t),n.d(t,"useMDXScope",(function(){return o})),n.d(t,"MDXScopeProvider",(function(){return s}));var r=n("q1tI"),a=n.n(r),i=Object(r.createContext)({}),o=function(e){var t=Object(r.useContext)(i);return e||t},s=function(e){var t=e.__mdxScope,n=e.children;return a.a.createElement(i.Provider,{value:t},n)}},Bnag:function(e,t){e.exports=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.")}},BsWD:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var r=n("a3WO");function a(e,t){if(e){if("string"==typeof e)return Object(r.a)(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Object(r.a)(e,t):void 0}}},CnBM:function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var s=n("q1tI"),c=n("17x9"),l=[],u=[];function d(e){var t=e(),n={loading:!0,loaded:null,error:null};return n.promise=t.then((function(e){return n.loading=!1,n.loaded=e,e})).catch((function(e){throw n.loading=!1,n.error=e,e})),n}function p(e){var t={loading:!1,loaded:{},error:null},n=[];try{Object.keys(e).forEach((function(r){var a=d(e[r]);a.loading?t.loading=!0:(t.loaded[r]=a.loaded,t.error=a.error),n.push(a.promise),a.promise.then((function(e){t.loaded[r]=e})).catch((function(e){t.error=e}))}))}catch(r){t.error=r}return t.promise=Promise.all(n).then((function(e){return t.loading=!1,e})).catch((function(e){throw t.loading=!1,e})),t}function f(e,t){return s.createElement((n=e)&&n.__esModule?n.default:n,t);var n}function m(e,t){var d,p;if(!t.loading)throw new Error("react-loadable requires a `loading` component");var m=Object.assign({loader:null,loading:null,delay:200,timeout:null,render:f,webpack:null,modules:null},t),g=null;function h(){return g||(g=e(m.loader)),g.promise}return l.push(h),"function"==typeof m.webpack&&u.push((function(){if(e=m.webpack,"object"===r(n.m)&&e().every((function(e){return void 0!==e&&void 0!==n.m[e]})))return h();var e})),p=d=function(t){function n(r){a(this,n);var o=i(this,t.call(this,r));return o.retry=function(){o.setState({error:null,loading:!0,timedOut:!1}),g=e(m.loader),o._loadModule()},h(),o.state={error:g.error,pastDelay:!1,timedOut:!1,loading:g.loading,loaded:g.loaded},o}return o(n,t),n.preload=function(){return h()},n.prototype.componentWillMount=function(){this._mounted=!0,this._loadModule()},n.prototype._loadModule=function(){var e=this;if(this.context.loadable&&Array.isArray(m.modules)&&m.modules.forEach((function(t){e.context.loadable.report(t)})),g.loading){"number"==typeof m.delay&&(0===m.delay?this.setState({pastDelay:!0}):this._delay=setTimeout((function(){e.setState({pastDelay:!0})}),m.delay)),"number"==typeof m.timeout&&(this._timeout=setTimeout((function(){e.setState({timedOut:!0})}),m.timeout));var t=function(){e._mounted&&(e.setState({error:g.error,loaded:g.loaded,loading:g.loading}),e._clearTimeouts())};g.promise.then((function(){t()})).catch((function(e){t()}))}},n.prototype.componentWillUnmount=function(){this._mounted=!1,this._clearTimeouts()},n.prototype._clearTimeouts=function(){clearTimeout(this._delay),clearTimeout(this._timeout)},n.prototype.render=function(){return this.state.loading||this.state.error?s.createElement(m.loading,{isLoading:this.state.loading,pastDelay:this.state.pastDelay,timedOut:this.state.timedOut,error:this.state.error,retry:this.retry}):this.state.loaded?m.render(this.state.loaded,this.props):null},n}(s.Component),d.contextTypes={loadable:c.shape({report:c.func.isRequired})},p}function g(e){return m(d,e)}g.Map=function(e){if("function"!=typeof e.render)throw new Error("LoadableMap requires a `render(loaded, props)` function");return m(p,e)};var h=function(e){function t(){return a(this,t),i(this,e.apply(this,arguments))}return o(t,e),t.prototype.getChildContext=function(){return{loadable:{report:this.props.report}}},t.prototype.render=function(){return s.Children.only(this.props.children)},t}(s.Component);function y(e){for(var t=[];e.length;){var n=e.pop();t.push(n())}return Promise.all(t).then((function(){if(e.length)return y(e)}))}h.propTypes={report:c.func.isRequired},h.childContextTypes={loadable:c.shape({report:c.func.isRequired}).isRequired},g.Capture=h,g.preloadAll=function(){return new Promise((function(e,t){y(l).then(e,t)}))},g.preloadReady=function(){return new Promise((function(e,t){y(u).then(e,e)}))},e.exports=g},EbDI:function(e,t){e.exports=function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}},Enzk:function(e,t,n){"use strict";var r=n("284h"),a=n("TqRt");t.__esModule=!0,t.ScrollHandler=t.ScrollContext=void 0;var i=a(n("PJYZ")),o=a(n("VbXa")),s=r(n("q1tI")),c=a(n("17x9")),l=n("/hTd"),u=s.createContext(new l.SessionStorage);t.ScrollContext=u,u.displayName="GatsbyScrollContext";var d=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;at.score?-1:e.index-t.index}))},h=function(e){return e.replace(/(^\/+|\/+$)/g,"").split("/")},y=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r0})))&&n.length>0?"?"+n.join("&"):"")},b=["uri","path"],A=function(e,t){var n=Object.keys(e);return n.length===Object.keys(t).length&&n.every((function(n){return t.hasOwnProperty(n)&&e[n]===t[n]}))}},LeKB:function(e,t,n){e.exports=[{plugin:n("gSxY"),options:{plugins:[],component:"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/src/templates/docs.js"}},{plugin:n("BOnt"),options:{plugins:[]}},{plugin:n("flL/"),options:{plugins:[],gatsbyRemarkPlugins:[{resolve:"gatsby-remark-images",options:{maxWidth:1035,sizeByPixelDensity:!0}},{resolve:"gatsby-remark-katex",options:{strict:"ignore"}},{resolve:"gatsby-remark-copy-linked-files"},{resolve:"gatsby-remark-acronyms",options:{acronyms:{"2Ltr":"2-Letter",Blk:"Block",Det:"Detachment","Stan/Eval":"Standardization and Evaluation","3DELRR":"Three Dimensional Expeditionary Long Range Radar","3PS":"Third Party Source",AAS:"Advisory and Assistance Services",A3M:"Air Force and Army Anti-Jam Modem",AA:"Adversarial Assessment",AAIP:"Aircraft Availability Improvement Program",AAR:"After-Action Review / Report",AARGM:"Advanced Anti-Radiation Guided Missile",AARI:"Air-to-air Range Infrastructure",ABSD:"Airborne Strategic Deterrence",AC:"Alternating Current",ACAT:"Acquisition Category",ACC:"Air Combat Command",ACCM:"Alternative Compensatory Control Measure",ACE:"Acquisition Center of Excellence",ACES:"Automated Civil Engineer System",ACPAT:"Air Force C4I Program Assessment Tool",ACPINS:"Automated Computer Program Identification Number System",ACPO:"Acquisition Chief Process Office",ACTD:"Advanced Concept Technology Demonstration",ACWP:"Actual Cost Work Performed",ADM:"Acquisition Decision Memorandum",ADS:"Advanced Distributed Simulation",AEC:"United States Army Evaluation Center",AECO:"Advance Engineering Change Order",AECS:"Advanced Entry Control System OR AFOTEC Electronic Coordination System",AEF:"Air and Space Expeditionary Force",AEHF:"Advanced Extremely High Frequency",AEP:"Accrued Expenditures Paid",AESO:"Advance Engineering Supplemental Order",AETC:"Air Education and Training Command",AETF:"Army Evaluation Task Force",AEU:"Accrued Expenditures Unpaid","AF GCIC":"Air Force Global Cyberspace Integration Center",AFMOASP:"Air Force Management and Oversight of Acquisition Services Process",AF:"(US) Air Force","AF/A10":"Assistant Chief of Staff for Strategic Deterrence and Nuclear Integration","AF/A2":"Deputy Chief of Staff, Intelligence, Surveillance and Reconnaissance","AF/A3/5":"Deputy Chief of Staff, Operations, Plans, and Requirements","AF/A4/7":"Deputy Chief of Staff, Logistics, Installations, and Mission Support","AF/A5/8":"HQ AF, Strategic Plans and Programs","AF/A5R":"Air Force Requirements Office","AF/A6":"Chief of Warfighting Integration and Chief Information Officer (CIO)","AF/A8":"Headquarters, Air Force Strategic Plans and Programs","AF/CC":"Chief of Staff, United States Air Force","AF/CV":"Vice Chief of Staff, United States Air Force","AF/SE":"Air Force Chief of Safety","AF/TE":"Headquarters Air Force Test and Evaluation Directorate",AFAE:"Air Force Acquisition Executive",AFAMS:"Air Force Agency for Modeling and Simulation",AFB:"Air Force Base",AFC2IC:"Air Force Command & Control Integration Center",AFC2ISRC:"Air Force Command and Control and Intelligence, Surveillance, and Reconnaissance Center (disestablished)",AFCA:"Air Force Communications Agency",AFCAA:"Air Force Cost Analysis Agency",AFCAP:"Air Force Certification and Accreditation Program",AFCD:"Air Force Capabilities Document",AFCEC:"Air Force Civil Engineer Center",AFCESA:"Air Force Civil Engineer Support Agency",AFDD:"Air Force Doctrine Document",AFDPO:"Air Force Departmental Publishing Office","AF-EA":"Air Force Enterprise Architecture",AFEE:"Air Force Element of Expense",AFEWES:"Air Force Electronic Warfare Simulator",AFFARS:"Air Force Federal Acquisition Regulation Supplement",AFFMA:"Air Force Frequency Management Agency",AFGK:"Air Force Gatekeeper",AFGLSC:"Air Force Global Logistics Support Center",AFGSC:"Air Force Global Strike Command",AFI:"Air Force Instruction",AFICE:"Air Force Integrated Collaborative Environment",AFIOC:"Air Force Information Operations Center",AFIPPS:"Air Force Integrated Personnel and Pay System",AFIT:"Air Force Institute of Technology",AFIWC:"Air Force Information Warfare Center (disestablished)",AFJO:"Air Force Joint Test Program Office",AFKN:"Air Force Knowledge Now",AFL2P:"Air Force Lessons Learned Program",AFLCMC:"Air Force Life Cycle Management Center",AFLIRP:"Air Force Lesson Issue Resolution Program",AFMAN:"Air Force Manual",AFMC:"Air Force Material Command",AFMD:"Air Force Mission Directive",AFMETCAL:"Air Force Metrology and Calibration",AFMSRR:"Air Force Modeling and Simulation Resource Repository",AFNET:"Air Force Network",AFNIC:"Air Force Network Integration Center","AF-NNSA":"Air Force-National Nuclear Security Administration",AFNWC:"Air Force Nuclear Weapons Center",AFOSH:"Air Force Occupational and Environmental Safety, Fire Protection, and Health OR Air Force Office of Safety and Health",AFOSI:"Air Force Office of Special Investigations",AFOTEC:"Air Force Operational Test and Evaluation Center","AFOTEC/A-1":"Manpower and Personnel Directorate","AFOTEC/A-1T":"Training Division","AFOTEC/A-1W":"Manpower and Personnel (Operations) Division","AFOTEC/A-2/9":"Intelligence, Analyses, and Assessments Directorate","AFOTEC/A-2N":"Intelligence Division","AFOTEC/A-3":"Operations Directorate","AFOTEC/A-3C":"Cyber Strategic Evaluation Division","AFOTEC/A-3E":"Operations Mission Support Division","AFOTEC/A-3F":"Test Operations Division","AFOTEC/A-3I":"Cyberspace Test Division","AFOTEC/A-3O":"Test Design Operations Division","AFOTEC/A-3Z":"Special Access Programs Division","AFOTEC/A-4/7":"Installations and Mission Support Directorate","AFOTEC/A-4F":"Logistics and Facilities Management Division","AFOTEC/A-5/8":"Plans and Programs Directorate","AFOTEC/A-5R":"Test Infrastructure Division","AFOTEC/A-6":"Communications and Information Directorate","AFOTEC/A-6O":"Cyber Operations Division","AFOTEC/A-6X":"Plans and Resources Division","AFOTEC/A-6Z":"Special Access Programs Information Technology Division","AFOTEC/A-7K":"Contracting Division","AFOTEC/A-7R":"Financial Resources Division","AFOTEC/A-8P":"Programming Division","AFOTEC/A-8R":"Long Range Investments Division","AFOTEC/A-8X":"Strategic Plans and Policy Division","AFOTEC/A-9A":"Analysis and Assessments Division","AFOTEC/A-9I":"Analysis Foundation and Integration Division","AFOTEC/A-9X":"Methods and Tools Division","AFOTEC/CA":"Technical Advisor","AFOTEC/CC":"AFOTEC Commander","AFOTEC/CCE":"Executive Officer","AFOTEC/CCJ":"Graphics","AFOTEC/CCP":"Protocol","AFOTEC/CCS":"Secretary","AFOTEC/CCX":"Commander’s Action Group","AFOTEC/CEM":"Chief Enlisted Manager","AFOTEC/CS":"Command Staff","AFOTEC/CV":"Vice Commander","AFOTEC/DS":"Director of Staff","AFOTEC/ED":"Executive Director","AFOTEC/HO":"History Office","AFOTEC/IGI":"Inspector General (Inspections)","AFOTEC/IP":"Information Protection","AFOTEC/LC":"Legal Council","AFOTEC/PA":"Public Affairs","AFOTEC/SE":"Safety",AFOTECI:"AFOTEC Instruction",AFOTECPAM:"AFOTEC Pamphlet",AFOTTP:"Air Force Operational Tactics, Techniques, and Procedures",AFPAM:"Air Force Pamphlet",AFPD:"Air Force Policy Directive","AFPEO/CM":"Air Force Program Executive Officer/Combat and Mission Support",AFRB:"Air Force Review Board",AFRC:"Air Force Reserve Command","AFRIMS RDS":"Air Force Information Management System Records Disposition Schedule",AFRIMS:"Air Force Records Information Management System",AFRL:"Air Force Research Laboratory",AFROC:"Air Force Requirements Oversight Council",AFROCC:"Air Force Requirements for Operational Capabilities Council",AFROCM:"Air Force Requirements Oversight Council Memorandum",AFRRG:"Air Force Requirements Review Group",AFSC:"Air Force Specialty Code",AFSEO:"Air Force SEEK EAGLE Office",AFSFC:"Air Force Security Forces Center",AFSIT:"Air Force System Interoperability Testing",AFSOC:"Air Force Special Operations Command",AFSPC:"Air Force Space Command",AFSSI:"Air Force Systems Security Instruction",AFTC:"Air Force Test Center",AGL:"Above Ground Level",AGM:"Air Ground Missile",AGR:"Active Guard and Reserve",AIM:"Air Intercept Missile","AIM-120 Adv EPIP":"AIM-120C Advanced Electronic Protection Improvement Program","AIM 120D SIP-3":"AIM-120D System Improvement Program",AIP:"Aircraft Information Program",AIR:"Acquisition Information Repository",AIS:"Automated Information Systems",AISR:"Airborne Intelligence, Surveillance, and Reconnaissance",AIT:"Automatic Identification Technology",ALC:"Air Logistics Center",ALCM:"Air Launched Cruise Missile","ALCS-R":"Airborne Launch Control System Replacement",ALDT:"Administrative and Logistics Delay",ALIS:"Autonomic Logistics Information System (F-35)",AMARG:"Aerospace Maintenance and Regeneration Group",AMAS:"AFOTEC Mission Applications Suite",AMC:"Air Mobility Command",AME:"Alternate Mission Equipment",AML:"Acquisition Master List",AMP:"C-130 Avionics Modernization Program",AMSAA:"Army Materiel Systems Analysis Activity","AN/PRC":"Army Navy/Portable Radio Communication",ANG:"Air National Guard",AO:"Area of Operations or Authorizing Official or Action Officer",Ao:"Operational Availability",AoA:"Analysis of Alternatives","AOC WS":"Air Operations Center Weapon System",AOTR:"Assessment of Operational Test Readiness",APA:"Additional Performance Attribute",APAT:"Acquisition Process Architecture Team",APB:"Acquisition Program Baseline",APDP:"Acquisition Professional Development Program",APKWS:"Advanced Precision Kill Weapon System",APM:"Acquisition Process Model",APML:"Acquisition Program Master List",APPG:"Annual Planning and Programming Guidance",APSR:"Accountable Property Systems of Record",APT:"Advanced Pilot Training",APUC:"Average Unit Procurement Cost",AR:"Analysis and Reporting Toolset OR Army Regulation",ARM:"Anti-Radiation Missile",ARRW:"Air-Launched Rapid Response Weapon",ART:"Adaptive-Relevant Test",ARTS:"Advanced Radar Threat System","AS Tool Kit":"Acquisition and Sustainment Tool Kit",AS:"Acquisition Strategy",ASACMS:"Advanced Situational Awareness Countermeasures System",ASACoE:"Application Software Assurance Center of Excellence",ASAF:"Assistant Secretary of the Air Force",ASD:"Acquisition Strategy Development OR Agile Software Development OR Assist Sec of Defense",ASDNII:"Assistant Secretary of Defense (Network and Information Integration",ASIP:"Airborne Signals Intelligence Payload OR Aircraft Structural Integrity Program",ASP:"Acquisition Strategy Panel",ASR:"Acquisition and Sustainment Reviews OR Alternative Systems Review",ASTK:"Acquisition Sustainment Tool Kit",ASuW:"Anti-Surface Warfare",AT:"Anti-Tamper","AT&L":"Acquisition, Technology, and Logistics",ATAPPS:"Automated Time Attendance and Production System",ATCALS:"Air Traffic Control and Landing Systems",ATD:"Advanced Technology Demonstration (or Development)",ATE:"Automatic Test Equipment",ATEC:"Army Test and Evaluation Command",ATO:"Air Tasking Order OR Authority to Operate",ATOS:"Automated Technical Orders System",ATPA:"AFOTEC Test Program Application","ATP-SE":"Advanced Targeting Pod-Sensor Enhancement",ATS:"Automatic Test System",ATTIC:"Analyst Training and Technical Information Center",AUTL:"Army Universal Task List",AV:"All Viewpoint",AVIP:"Aviation Integrity Program",AVPOL:"Aviation Petroleum, Oil, and Lubricants",AWACS:"Airborne Warning and Control System",AWBS:"Air Warfare Battle Shaping",AWIP:"Advanced Weapons Integration Program","B-2 DMS":"Defensive Management System","B-2 EHF SATCOM":"Extremely High Frequency Satellite Communications","B-52 CERP":"B-52 Commercial Engine Replacement Program","B-52 RMP":"B-52 Radar Modernization Program","B61 LEP":"B61 Life Extension Program",BAA:"Buy American Act",BBP:"Bullet Background Paper",BC:"Business Case",BCA:"Business Case Analysis",BCL:"Business Capability Lifecycle",BCS:"Baseline Comparison System","BCS-F":"Battle Control System-Fixed",BDA:"Big Data Analytics; Bomb Damage Assessment",BDRSK:"Battle Damage Repair Spares Kit",BEA:"Business Enterprise Architecture",BES:"Budget Estimate Submission",BFT:"Blue Force Tracking",BISS:"Base and Installation Security System","BLOS C2":"Beyond-Line-of-Sight Command and Control",BLOS:"Beyond Line of Sight",BLU:"Bomb, Live Unit",BMC2:"Battle Management Command and Control Communications",BMD:"Ballistic Missile Defense",BMDS:"Ballistic Missile Defense System",BOS:"Base Operating Support",BPAC:"Budget Program Activity Code",BRU:"Bomb Release Units",BU:"Block Update","C&A":"Certification and Accreditation","C&L":"Capabilities and Limitations","C&LR":"Capabilities and Limitations Report",C2:"Command and Control",C2AOS:"Command and Control Air Operations Suite",C2BMC:"Command, Control, Battle Management, and Communications",C2D2:"Continuous Capability Development and Delivery",C2IS:"Command and Control Information Services",C4:"Command, Control, Communications, and Computers",C4I:"Command, Control, Communications, Computers, and Intelligence",C4ISP:"Command, Control, Communication, Computers, and Intelligence Support Plan",C4ISR:"Cmd, Control, Comm, Computers, Intel, Surveillance, and Reconnaissance",CA:"Command Technical Advisor OR Contract Award OR Criticality Analysis",CAC:"Common Access Card ",CAD:"Computer-Aided Design (or Drafting)",CAE:"Component Acquisition Executive",CAFTOP:"Comprehensive Air Force Technical Order Plan",CAG:"Commander’s Action Group",CAGE:"Commercial and Government Entity",CAIG:"Cost Analysis Improvement Group",CALS:"Common Analytical Laboratory System",CAM:"Centralized Asset Management",CAOC:"Coalition Air Operations Center",CAP:"Contractor Acquired Property OR Critical Acquisition Position",CAPCO:"Controlled Access Program Coordinating Office",CAPE:"Cost Assessment and Program Evaluation",CAPES:"F-16 Combat Avionics Programmed Extension Suite",CARD:"Cost Analysis Requirements Description",CASS:"Close Air Support System",CAT:"Category",CBA:"Capabilities-Based Assessment",CBDP:"Chemical and Biological Defense Program",CBM:"Condition-Based Maintenance Plus",CBP:"Capability-Based Planning",CBR:"Chemical, Biological, and Radiological",CBRD:"Capabilities-Based Requirements Document",CBRN:"Chemical, Biological, Radiological and Nuclear",CC:"Commander OR Critical Component",CCA:"Clinger-Cohen Act OR Component Cost Analysis",CCaR:"Comprehensive Cost and Requirement System",CCCA:"Common Core Compliance Area",CCD:"Combat Capability Document",CCDR:"Combatant Commander",CCJO:"Capstone Concept for Joint Operations",CCMD:"Combatant Command",CCP:"Command Control Points",CCPE:"Corrosion Control Program Executive",CCR:"Call Completion Rate","C-CS":"Counter-Concealment Sensing",CCT:"Capability Collaboration Teams",CCTD:"Concept Characterization and Technical Description",CCX:"Commander’s Action Group Office Symbol",CD:"Capability Director (or Directorate) OR Deputy Commander",CDA:"Current Design Activity",CDD:"Capability Development Document",CDP:"Capability Definition Package",CDR:"Critical Design Review",CDRL:"Contract Data Requirements List",CDS:"Cross Domain Solution",CDT:"Chief Developmental Tester",CE:"Civil Engineer OR Conducted Emissions",CEP:"Circular Error Probability",CERT:"Certification",CFL:"Core Function Lead",CFLI:"Core Function Lead Integrator",CFMP:"Core Function Master Plan",CFO:"Chief Financial Officer",CFP:"Capabilities Focused Planning",CFR:"Code of Federal Regulations",CFSR:"Contract Funds Status Report",CGA:"Capability Gap Assessment",CGM:"Common GPS Module",CI:"Configuration Item OR Counterintelligence",CICA:"Competition in Contracting Act",CIDAS:"Contamination Indicator Decontamination Assurance System",CIED:"Counter-Improvised Explosive Device",CIMB:"Commander’s Inspection Management Board",CIO:"Chief Information Officer",CIP:"Critical Intelligence Parameter",CIPS:"Cyberspace Infrastructure Planning System",CIR:"Capital Investment Report",CISP:"Counterintelligence Support Plan",CITE:"Center of Industrial and Technical Excellence",CJCS:"Chairman, Joint Chiefs of Staff",CJCSI:"Chairman, Joint Chief of Staff Instruction",CJCSM:"Chairman, Joint Chiefs of Staff Manual",CJR:"COBRA JUDY Replacement",CJTF:"Coalition Joint Task Force",CL:"China Lake OR Civilian Leader OR Continuous Learning",CLIN:"Contract Line Item Number",CLS:"Contractor Logistics Support",CM:"Configuration Management OR Consequence Management OR Constellation Management OR Corrective Maintenance",CMBRE:"Common Munitions BIT Reprogramming Equipment",CMC:"C-5 Core Mission Computer and Weather Radar Program",CML:"Capability-Mission Lattice",CMMI:"Capability Maturity Model Integration",CMP:"Configuration Management Plan",CMRS:"Collaboration and Measurements Requirements Summary",CNA:"Computer Network Attack",CNEO:"Change Notice Engineering Order",CNSSI:"Committee on National Security Systems (CNSS) Instruction",CNWDI:"Critical Nuclear Weapons Design Information",CO:"Contracting Officer",COA:"Course of Action",CoC:"Certificate of Compliance",COCOM:"Combatant Command",COD:"Capability Development Document",COI:"Critical Operational Issue",COLISEUM:"Community On-Line Intelligence System for End Users and Managers",COMAFFOR:"Commander Air Force Forces",COMOPTEVFOR:"Naval Command Operational Test and Evaluation Force",COMSEC:"Communications Security",CoN:"Certificate of Networthiness",CONECT:"B-52 Combat Network Communications Technology",CONEMP:"Concept of Employment",CONOPS:"Concept of Operations",COOP:"Continuity of Operations Plan",COP:"Common Operating Picture",CoP:"Community of Practice",COR:"Contracting Officer’s Representative",CORE:"Critical Operational Issues and Criteria",COTF:"Commander, Operational Test Force (OPTEVFOR)",COTS:"Commercial Off-the-Shelf",COTT:"Combined Operational Test Team",CPA:"Chairman’s Program Assessment",CPAF:"Cost-Plus Award Fee",CPARS:"Contractor Performance Assessment Reporting System",CPCP:"Corrosion Prevention and Control Plan",CPD:"Capability Production Document",CPI:"Crash Position Indicator OR Critical Program Information",CPIF:"Cost Plus Incentive Fee",CPM:"Capability Portfolio Manager",CPR:"Chairman’s Program Recommendation",CR:"Change Request",CR6:"Hexavalent Chromium",CRA:"Continuing Resolution Authority OR Cost Risk Assessment OR Chairman’s Risk Assessment",CRD:"Capabilities Requirements Document ",CRDA:"Cooperative Research and Development Agreement",CRH:"Combat Rescue Helicopter",CRIIS:"Common Range Integrated Instrumentation System",CRISP:"Cross Industry Standard Process for Data Mining",CRM:"Component Resolution Matrix OR Crew Resource Management",CRRA:"Capabilities Review and Risk Assessment",CRS:"Chairman’s Readiness System",CS:"Chief of Staff OR Command Section OR Conducted Susceptibility OR Contractor Support OR Cybersecurity Strategy",CSA:"Combat Support Agency",CSAF:"Chief of Staff of the Air Force",CSAG:"Consolidated Sustainment Activity Group",CSAR:"Combat Search and Rescue",CSARL:"Combat Search and Rescue Locator",CSB:"Configuration Steering Board",CSCI:"Computer Software Configuration Items",CSE:"Center for Systems Engineering OR Common Support Equipment",CSH:"Common Support Helicopter",CSI:"Critical Safety Item",CSO:"Commodity Strategy Official",CSR:"Critical System Resources",CSS:"Contract Sustainment Support","C-sUAS":"Counter-small Unmanned Aerial Systems",CSWS:"Contractor Supported Weapon System",CT:"Contractor Testing OR Critical Technology",CTA:"Capability Threat Assessments OR Center Test Authority",CTE:"Critical Technology Element",CTEIP:"Central Test & Evaluation Investment Program",CTF:"Combined Task Force",CTIC:"Contractor Technical Information Code",CTM:"Capability Transition Memorandum",CtO:"Certificate to Operate",CTOM:"Centralized Technical Order Management",CTP:"Critical Technical Parameter",CTR:"Capability Transition Review",CUI:"Controlled Unclassified Information",CUMI:"Controlled Unclassified Military Information",CV:"Vice Commander OR Capability Viewpoint",CVI:"AFOTEC Information Protection/SAP Security (office symbol)",CVLSP:"Common Vertical Lift Support Platform",CVPA:"Cooperative Vulnerability and Penetration Assessment",CVW:"Carrier Air Wing",CWI:"Continuous Wave Illuminator",CY:"Calendar Year","D&F":"Determination and Findings","D,ARA":"Director, Acquisition Resources, and Analysis","D/CAPE":"Director, Cost Assessment, and Program Evaluation","D/QT&E":"Development/Qualification Test and Evaluation",DA:"Department of the Army",DAA:"Designated Approval Authority",DAB:"Defense Acquisition Board",DAC:"Designated Acquisition Commander",DACM:"Director, Acquisition Career Management",DAE:"Defense Acquisition Executive",DAES:"Defense Acquisition Executive Summary",DAF:"Department of the Air Force",DAG:"Defense Acquisition Guidebook",DAMIR:"Defense Acquisition Management Information Retrieval",DAO:"Designated Acquisition Officials",DARC:"Deep Space Advanced Radar Concept",DARPA:"Defense Advanced Research Projects Agency",DART:"Data, Acquisition, Recording, and Telemetry OR Deficiency Analysis Ranking Technique",DAS:"Defense Acquisition System",DASD:"Deputy Assistant Secretary of Defense",DATO:"Denial of Authorization to Operate",DAU:"Defense Acquisition University",DAWIA:"Defense Acquisition Workforce Improvement Act",DBC:"Defense Business Council",DBS:"Defense Business Systems",DBSMC:"Defense Business Systems Management Committee",DC:"Derivative Classifier OR Direct Current",DCAA:"Defense Contract Audit Agency",DCAPE:"Director of Cost Assessment and Program Evaluation",DCAPES:"Deliberate and Crisis Action Planning and Execution Segments",DCGS:"Distributed Common Ground System",DCID:"Director of Central Intelligence Directive",DCMA:"Defense Contract Management Agency",DCPDS:"Defense Civilian Personnel Data System",DCR:"DOTMLPF-P Change Recommendation",DCS:"Deputy Chief of Staff","DDNI/M":"Deputy Director of National Intelligence for Management",DDR:"Deputy Director for Requirements OR Dismount Detection Radar","DDT&E":"Director, Developmental Test and Evaluation",DEAD:"Destruction of Enemy Air Defenses",DEAMS:"Defense Enterprise Accounting and Management System",DEF:"Developmental Evaluation Framework",DepSecDef:"Deputy Secretary of Defense","Det/CC":"Detachment Commander",DEW:"Directed Energy Weapons",DEWCB:"Directed Energy Weapons Certification Board",DFARS:"Defense Federal Acquisition Regulation Supplement",DFCN:"Dual Frequency Civil Navigation",DFoS:"Decontamination Family of Systems",DHMSM:"Defense Healthcare Management Systems Modernization",DIA:"Defense Intelligence Agency",DIACAP:"DoD Information Assurance Certification and Accreditation Process",DID:"Data Item Description",DIP:"DIACAP Implementation Plan",DISA:"Defense Information Systems Agency",DISR:"Department of Defense Information Technology Standards Registry",DITSCAP:"Department of Defense Information Technology Security Certification and Accreditation Program",DIV:"Data and Information Viewpoint",DLA:"Defense Logistics Agency",DLR:"Depot-Level Repairable",DM:"Data Mining",DMAP:"Data Management and Analysis Plan",DMAWG:"Depot Maintenance Activation Working Group",DMEA:"Defense Microelectronics Activity",DMI:"Depot Maintenance Interservice","DMIX JLV":"Defense Medical Information Exchange Joint Legacy Viewer",DMS:"Defensive Management System OR Diminishing Manufacturing Sources",DMSMS:"Diminishing Manufacturing Sources Material Shortages",DNAD:"Domestic Non-Availability Determination",DNI:"Director of National Intelligence",DoD:"Department of Defense",DODAAC:"Department of Defense Activity Code",DODD:"Department of Defense Directive",DODI:"Department of Defense Instruction",DODIN:"Department of Defense Information Network",DODIPP:"Department of Defense Intelligence Production Program",DODISS:"Department of Defense Index of Specifications and Standards",DODM:"Department of Defense Manual",DOE:"Department of Energy OR Design of Experiments",DoN:"Department of the Navy","DOT&E":"Director of Operational Test and Evaluation","DOTMLPF-P":"Doctrine, Organization, Training, materiel, Leadership Policy and Education, Personnel, Facilities, and Policy",DP:"Development Planning",DPAP:"Director of Procurement and Acquisition Policy",DPAS:"Defense Priorities and Allocation System",DPEM:"Depot Purchased Equipment Maintenance",DPG:"Defense Planning Guidance",DPGS:"Data Processing Ground Station",DPPG:"Defense Planning and Programming Guidance","DR SKO":"Dismounted Reconnaissance Sets, Kits, and Outfits",DR:"Deficiency Report",DRAGON:"E-3 Diminishing manufacturing sources Replacement of Avionics for Global Operations and Navigation",DRB:"Deficiency Review Board",DREN:"Defense Research Engineering Network",DRI:"Data Referential Integrity","DRI&R":"Deficiency Reporting, Investigation and Resolution",DRM:"DRAGON Requirements Memorandum",DRMO:"Defense Reutilization Marketing Office",DRR:"Design Readiness Review",DRU:"Direct Reporting Unit","DS&TI":"Designated Science and Technology Information",DSA:"Direct Sales Agreement",DSC:"Decision Support Question",DSCA:"Defense Security Cooperation Agency",DSM:"Development System Manager OR Digital System Model",DSOR:"Depot Source of Repair","DSOR-EM":"Depot Source of Repair-Electronic Manager",DT:"Developmental Test","DT&E":"Developmental Test and Evaluation",DTD:"Data Type Definition",DTIC:"Defense Technical Information Center",DTM:"Directive-Type Memorandum",DTP:"Detailed Test Plan",DUSD:"Deputy Under Secretary of Defense","E&S":"Effectiveness and Suitability","E-3 DRAGON":"E-3 Diminishing manufacturing sources Replacement of Avionics for Global Operations and Navigation",E3:"Electromagnetic Environmental Effects",EA:"Economic Analysis OR Electronic Attack OR Evolutionary Acquisition OR Executing Authority",EAC:"Estimate at Completion",ECD:"Estimated Completion Date",ECM:"Electronic Countermeasures",ECN:"Enclave Control Node",ECSS:"Expeditionary Combat Support System",ED:"Executive Director",EDGC:"Engineering Data Guidance Conference",EDM:"Engineering Data Manager (or Management) OR Engineering Development Model",EDSC:"Engineering Data Service Center",EEC:"Enterprise Engineering Center",EEIC:"Element of Expense Investment Code",EFF:"Essential Function Failure",EHF:"Extremely High Frequency",EIAP:"Environment Impact Analysis Process",EIEMA:"Enterprise Information Environment Mission Area",EIS:"Early Influence Strategy",EIT:"Early Influence Team",EITDR:"Enterprise Information Technology Data Repository",EKMS:"Electronic Key Management System",ELA:"Elevated Level of Assurance",ELT:"Emergency Locator Transmitter",EMA:"Expectation Management Agreement",EMC:"Electromagnetic Compatibility","EMC/EMI":"Electromagnetic Compatibility/Electromagnetic Interference",EMD:"Engineering and Manufacturing Development",EMI:"Electromagnetic Interference",EMP:"Electromagnetic Pulse",EMSEC:"Emission Security",EMV:"Electromagnetic Vulnerability",ENSIP:"Engine Structural Integrity Program",EO:"Electro-Optical OR Executive Order OR Engineering Order",EOA:"Early Operational Assessment",EOD:"Explosive Ordnance Disposal",EP:"Electronic Protection",EPAWSS:"F-15 Eagle Passive and Active Warning and Survivability System",EPG:"Electronic Proving Ground",EPIP:"AIM-120C Advanced Electronic Protection Improvement Program",EPS:"Enhanced Polar System",EPVD:"Electromagnetically Enhanced Physical Vapor Deposition (gun tube coating",ERF:"Electronic Remote Fill",ERM:"Environmental Resources Manager",ESC:"Electromagnetic Spectrum Certification OR Evaluation Summary Chart",ESOH:"Environment, Safety, and Occupational Health",ESOHC:"Environment, Safety, and Occupational Health Council",ESOHCB:"Environment, Safety, and Occupational Health Certification Board","ESOH-MS":"Environment, Safety, and Occupational Health Management System",ESP:"Emergency and Special Program",ESS:"Effectiveness, Suitability, and Survivability OR Evolved Strategic Satellite Communications",ESW:"Electronic Systems Wing OR Evaluation Summary Worksheet",ETIMS:"Enhanced Technical Information Management System",ETM:"Electronic Technical Manual",ETO:"Executing Test Organization",EU:"Engineering Units",EUC:"End Use Certificate",EV:"Evaluation View",EVM:"Earned Value Management","EVM-CR":"Earned Value Management-Central Repository",EVMS:"Earned Value Management System",EW:"Electronic Warfare",EWIIP:"Electronic Warfare Infrastructure Improvement Program",EWIR:"Electronic Warfare Integrated Reprogramming",EWSR:"Executive Weapons System Review","F-15 EPAWSS":"F-15 Eagle Passive and Active Warning and Survivability System","F-15 IRST":"F-15 Infrared Search and Track System",F3I:"Form, Fit, Function, or Interface",FAA:"Federal Aviation Administration OR Functional Area Analysis","FAB-T":"Family of Advanced Beyond Line Of Sight Terminals","FAC-A":"Forward Air Controller-Airborne",FAR:"Federal Acquisition Regulation",FARM:"Functional Area Records Manager",FAT:"First Article Test",FCA:"Functional Configuration Audit",FCB:"Functional Capabilities Board",FCC:"Flagship Capability Concepts",FCT:"Foreign Comparative Test",FD:"Fielding Decision","FD/SC":"Failure Definition/Scoring Criteria",FDB:"Final Evaluation and Decision Brief",FDD:"Full Deployment Decision",FDDR:"Full Deployment Decision Review",FDE:"Force Development Evaluation",FDO:"Fee Determining Official",FDR:"Final (or Formal) Design Review",FET:"Force Element Terminal",FFP:"Firm Fixed Price",FFRDC:"Federally Funded Research and Development Centers",FFT:"Friendly Force Tracking",FH:"Flying Hours",FIAR:"Financial Improvement and Audit Readiness",FIP:"Federal Information Processing",FISCAM:"Federal Information System Controls Audit Manual",FISMA:"Federal Information Security Management Act of 2002",FM:"Financial Management OR Frequency Modulation OR Functional Manager",FMC:"Fully Mission Capable",FMECA:"Failure Mode, Effects, and Criticality Analysis",FMM:"Flight Manual Manager",FMP:"Flight Manuals Program OR Foreign Materiel Program",FMR:"Financial Management Regulation",FMRS:"Financial Management Regulation System",FMS:"Foreign Military Sales","FMU-139 D/B":"Fuze Module Unit-139",FNA:"Functional Needs Analysis",FOA:"Field Operating Agency",FOB:"Forward Operating Base",FOC:"Full Operational Capability",FOIA:"Freedom of Information Act",FoM:"Follow-on Modernization",FORGE:"Future Operationally Resilient Ground Evolution",FoS:"Family of Systems","FOT&E":"Follow-on Operational Test and Evaluation",FOU:"Full Operational Utility",FOUO:"For Official Use Only",FOV:"Field of View",FPAF:"Fixed-Price with Award Fee",FPD:"Follow-on Production Decision","FPDS-NG":"Federal Procurement data System-Next Generation",FPIF:"Fixed-Price Incentive",FPR:"Final Pricing Report OR Final Proposal Revision",FPRA:"Forward Price Rate Agreements",FQR:"Formal Qualification Review",FRD:"Formerly Restricted Data",FRP:"Full-Rate Production","FRP/FD":"Full-Rate Production or Full Deployment",FRPDR:"Full Rate Production Decision Review",FRRB:"Functional Requirements Review Board",FSA:"Functional Solution Analysis",FSC:"Federal Supply Classification",FSR:"Field Service Representative",FTE:"Full Time Equivalent",FTX:"Field Training Exercise",FY:"Fiscal Year",FYDP:"Future Years Defense Program","G&A":"General and Administrative (Expense)",GAO:"Government Accountability Office",GAT:"Government Analysis Tool",GBS:"Global Broadcast Service",GBSD:"Ground Based Strategic Deterrent",GBU:"Guided Bomb Unit",GCIC:"Global Cyberspace Integration Center",GCS:"Ground Control Stations","GCSS-AF":"Global Combat Support System – Air Force",GDT:"Government Development Test",GEF:"Guidance for the Employment of the Force",GEO:"Geosynchronous Earth Orbit",GFE:"Government Furnished Equipment",GFI:"Government Furnished Information",GFM:"Global Force Management",GFP:"Government Furnished Property","GH GSMP":"Global Hawk Ground Segment Modernization Program",GIDEP:"Government Industry Data Exchange Program",GIG:"Global Information Grid",GLSC:"Global Logistics Support Center",GMT:"Ground Movement Terrain Radar",GMTI:"Ground Moving Target Indicator",GO:"General Officer","GO/SES":"General Officer/Senior Executive Service",GOCO:"Government Owned Contractor Operated",GOSG:"General Officer Steering Group",GOTS:"Government Off-the-Shelf",GPA:"GPS Pulse-per-Second Adapter",GPC:"Government Purchase Card",GPD:"General Purpose Decontaminant Program",GPLR:"Government Purpose License Rights",GPR:"Government Purpose Rights","GPS III COps":"Global Positioning System III Contingency Operations","GPS MCEU":"Global Positioning System M-Code Early Use","GPS MGUE":"Military GPS User Equipment","GPS OCX":"GPS Next Generation Operational Control System",GPS:"Global Positioning System",GS:"General Schedule",GSA:"Government Services Administration",GSMP:"Ground Segment Modernization Program","GTG-F":"Global Information Grid Technical Guidance Federation","G-TSCMIS":"Global Theater Security Cooperative Management Information System",GTV:"Guided Test Vehicle",HAF:"Headquarters Air Force",HAFMD:"Headquarters Air Force Mission Directive",HAMS:"Hardness Assurance, Maintenance, and Surveillance",HARPOON:"(AGM-84-Fixed Wing; RGM-Surface Ships; UGM-Submarine Launched)",HCA:"Head of Contracting Activity (or Agency)",HCI:"Human-Computer Interactions",HCSP:"Human Capital Strategic Plan",HCSW:"Hypersonic Conventional Strike Weapon",HDF:"Hierarchical Data Format",HEMP:"High-Altitude Electromagnetic Pulse",HERF:"Hazards of Electromagnetic Radiation to Volatile Material",HERO:"Hazards of Electromagnetic Radiation to Ordinance",HERP:"Hazards of Electromagnetic Radiation to Personnel",HFE:"Human Factors Engineering",HITL:"Hardware in the Loop","HM/HS":"Hardness Maintenance / Hardness Surveillance",HMS:"Handheld, Manpack, and Small Form Fit",HO:"HQ AFOTEC History Office",HOI:"Headquarters Operating Instruction",HPT:"High Performance Team",HQ:"Headquarters",HSI:"Human Systems Integration",HSN:"High Speed Network",HSP:"Health and Safety Plan",HTM:"Hard Target Munitions",HTVSF:"Hard Target Void Sensing Fuze",HwA:"Hardware Assurance",IA:"Information Assurance (replaced by “cybersecurity”)",IAC:"International Armaments Cooperation",IAD:"Integrated Air Defense",IADS:"Integrated Air Defense System",IAE:"Integrated Aircrew Ensemble",IAMD:"Integrated Air and Missile Defense",IATO:"Interim Authorization to Operate",IATT:"Interim Authority to Test or Authorization to Test",IAVA:"Information Assurance Vulnerability Alert",IAW:"In Accordance With",IB:"Involvement Briefing",IBA:"Individual Body Armor",IBBP:"Involvement Bullet Background Paper",IBCT:"Infantry Brigade Combat Team",IBDC2:"Integrated Base Defense Command and Control",IBDSS:"Integrated Base Defense Security System",IBR:"Integrated Baseline Review",IBS:"Integrated Broadcast Service",IC:"Intelligence Community",ICADS:"Individual Combat Aircrew Display System",ICBM:"Intercontinental Ballistic Missile",ICCR:"Intelligence Community Capability Requirements",ICD:"Initial Capabilities Document OR Interface Control Document",iCDD:"initial Capability Development Document",ICE:"Independent Cost Estimate",ICEP:"Information Certification Evaluation Plan",ICM:"Interim Contractor Support",ICP:"Inventory Control Point",ICS:"Interim Contract Support",ICT:"Integrated Concept Team",ID:"Identification","ID/IQ":"Indefinite Delivery/Indefinite Quantity",IDE:"Integrated Data Environment",IDL:"Indentured Data List",IDRL:"Integrated Data Requirements List",IEB:"Initial Evaluation Briefing",IED:"Improvised Explosive Device",iEHR:"Integrated Electronic Health Records",IER:"Information Exchange Requirements",IETM:"Interactive Electronic Technical Manual",IFC:"Integrated Functional Capability",IFDL:"Intraflight Datalink",IFM:"Intelligence in Force Modernization",IFTU:"In-Flight Targeting Update",IGF:"Inherently Governmental Function",IITD:"Initial Integrated Test Design",IL:"Involvement Letter",ILCM:"Integrated Life Cycle Management",ILS:"Instrument Landing System OR Integrated Logistics Support",ILSP:"Integrated Logistics Support Plan",IM:"Insensitive Munitions",IMC:"Instrument Meteorological Conditions",IMD:"Intelligence Mission Data",IMDS:"Integrated Maintenance Data System",IMET:"International Military Education and Training",IMP:"Integrated Master Plan",IMS:"Integrated Master Schedule",IMT:"Information Management Tool",IMTP:"Integrated Master Test Plan",INC:"Increment",INS:"Inertial Navigation System",IO:"Information Operations",IOC:"Initial Operational Capability",IOT:"Initial Operational Test","IOT&E":"Initial Operational Test and Evaluation",IP:"Information Protection OR Initial Point OR Intellectual Property OR Internet Protocol",IPA:"Independent Program Assessment",IPAT:"Independent Program Assessment Team",IPL:"Integrated Priority List",IPMR:"Independent Program Management Report",IPR:"In-Process Review",IPS:"Integrated Program Summary OR Intellectual Property Strategy",IPSS:"Initial Provisioning Performance Specifications",IPT:"Integrated Product Team",IR:"Infrared",IRAD:"Independent Research and Development",IRB:"Intelligence Resources Board OR Investment Review Board",IRCM:"Infrared Countermeasures",IRSS:"Information and Resource Support System",IRST:"Infrared Search and Track System","IS CDD":"Information System Capability Development Document","IS ICD":"Information System Initial Capabilities Document",IS:"Information System",ISA:"International Standardization Agreement",ISACA:"Information Systems Audit and Control Association",ISO:"International Standards Organization",ISOO:"Information Security Oversight Office",ISP:"Information Support Plan",ISPAN:"Integrated Strategic Planning and Analysis Network",ISR:"Intelligence, Surveillance, and Reconnaissance OR Interim Summary Report",ISSM:"Information System Security Manager",ISWG:"Intelligence Support Working Group","IT Lean":"Information Technology Lean",IT:"Information Technology OR Integrated Testing","IT&E":"Integrated Test and Evaluation","IT/NSS":"Information Technology/National Security System",ITA:"Interface Test Adapter",ITAB:"Information Technology Acquisition Board",ITC:"Integrated Test Concept",ITD:"Initial Test Design",ITEA:"Initial Threat Environment Assessment",ITO:"Initial Tasking Order",ITP:"Integrated Test Plan",ITT:"Integrated Test Team",IUID:"Item Unique Identification",IUS:"Internal Use Software",IW:"Information Warfare",IWBU:"Internal Weapons Bay Upgrade",IWSM:"Integrated Weapons System Management","J&A":"Justification and Approval","J-8/DDR":"Joint Staff J-8, Deputy Director for Requirements","J-8/SAPCOORD":"Joint Staff J-8, Special Access Program Coordinator",JAFAN:"Joint Air Force Army Navy",JAGM:"Joint Air-to-Ground Missile",JALN:"Joint Aerial Layered Network",JASSM:"Joint Air-to-Surface Standoff Missile",JAWS:"Joint Avionics Workstation",JBADS:"Joint Biological Agent Decontamination System",JBTDS:"Joint Biological Tactical Detection System",JCA:"Joint Capability Area",JCAAMP:"Joint Improvised Explosive Device Defeat Capability Approval and Acquisition Management Process",JCALS:"Joint Computer-Aided Acquisition and Logistic Support",JCB:"Joint Capabilities Board",JCC2:"Joint Cyber Command and Control",JCCA:"Joint Combat Capability Assessment",JCD:"Joint Capabilities Document",JCIDS:"Joint Capabilities Integration and Development System",JCPATE:"Joint C4I Program Assessment Tool-Empowered",JCREW:"Joint Counter Radio-Controlled Improvised Explosive Device Electronic Warfare",JCS:"Joint Chiefs of Staff",JCTD:"Joint Capability Technology Demonstration",JDAM:"Joint Direct Attack Munition",JDMAG:"Joint Depot Maintenance Activities Group",JDRS:"Joint Deficiency Reporting System",JEDMICS:"Joint Engineering Data Management Information and Combat System",JEM:"Joint Effects Model",JENM:"Joint Enterprise Network Manager",JEON:"Joint Emergent Operational Need",JFC:"Joint Functional Concept",JFCC:"Joint Functional Component Commander",JIC:"Joint Integrating Concept",JICO:"Joint Interface Control Officer",JIE:"Joint Intelligence Estimate",JIEDDF:"Joint Improvised Explosive Device Defeat Fund",JIEDDO:"Joint Improvised Explosive Device Defeat Organization",JITC:"Joint Interoperability Test Command",JLE:"Joint Logistics Estimate",JLLP:"Joint Lessons Learned Program",JLTV:"Joint Light Tactical Vehicle",JMC:"Joint Mission Computer",JMETC:"Joint Mission Environment Test Capability",JMM:"Joint Miniature Munitions",JMS:"Joint Space Operations Center (JSpOC) Mission System",JMT:"Joint Mission Thread",JOC:"Joint Operating Concept",JOMIS:"Joint Operational Medicine Information Systems",JOpsC:"Joint Operations Concept",JOTT:"JSF Operational Test Team",JP:"Joint Publication",JPALS:"Joint Precision Approach and Landing System",JPD:"Joint Potential Designator",JPE:"Joint Personnel Estimate",JPG:"Joint Planning Guidance",JPO:"Joint Strike fighter Program Office",JRAC:"Joint Rapid Acquisition Cell",JRMET:"Joint Reliability and Maintainability Evaluation Team",JRO:"Joint Requirements Office",JROC:"Joint Requirements Oversight Council",JROCM:"Joint Requirements Oversight Council Memorandum",JS:"Joint Staff",JSA:"Joint Strategic Assessment","JSAM-FW":"Joint Service Aircrew Mask-Fixed Wing","JSAM-SA":"Joint Service Aircrew Mask-Strategic Aircraft","JSAM-TA":"Joint Service Aircrew Mask-Tactical Aircraft",JSD:"Joint Staffing Designator",JSE:"Joint Simulation Environment",JSEW:"Joint Sensitive Equipment Wipes (Decontamination Family of Systems)",JSF:"Joint Strike Fighter",JSIG:"Joint Special Access Program (SAP) Implementation Guide",JSOW:"Joint Stand-Off Weapon",JSpOC:"Joint Space Operations Center",JSPS:"Joint Strategic Planning System",JSR:"Joint Strategy Review",JSS:"Joint Interface Control Officer (JICO) Support System",JSTAR:"Joint System Threat Assessment Report","JSTARS RECAP":"Joint Surveillance Target Attack Radar System Recapitalization","JT&E":"Joint Test and Evaluation",JTAC:"Joint Terminal Attack Controller",JTR:"Joint Tactical Radio",JTRS:"Joint Tactical Radio System","JTRS-AMF":"Joint Tactical Radio System-Airborne Maritime Fixed",JUON:"Joint Urgent Operational Need",JUPITR:"Joint United States Forces Korea Portal and Integrated Threat Recognition",JWARN:"Joint Warning & Reporting Network",JWICS:"Joint Worldwide Intelligence Communications System",KDP:"Key Decision Point",KIP:"Key Interface Profile",KLP:"Key Leadership Position","KM/DS":"Knowledge Management/Decision Support",KN:"Knowledge Now",KPP:"Key Performance Parameter",KSA:"Key System Attribute",L2:"Lessons Learned",LA:"Logistics Assessment",LAT:"Lot Acceptance Test","L-band":"Long Band",LC:"HQ AFOTEC Legal Counsel",LCB:"Lower Confidence Bound",LCC:"Life Cycle Cost",LCCE:"Life Cycle Cost Estimate",LCMC:"Life Cycle Management Center",LCMP:"Life Cycle Management Plan",LCRM:"Life Cycle Risk Management",LCS:"Launch and Checkout System",LCSP:"Life Cycle Sustainment Plan",LD:"Limited Deployment OR Logistics Demonstration",LDC:"LAN Data Collector",LDTO:"Lead Developmental Test Organization",LED:"Light Emitting Diode",LEO:"Low Earth Orbit",LEP:"Life Extension Program",LFD:"Limited Fielding Decision","LFT&E":"Live Fire Test and Evaluation",LHA:"Logistics Health Assessments",LJDAM:"Laser Joint Direct Attack Munition (GBU-56)",LM:"Lockheed Martin",LMD:"Logistics MANPRINT Demonstration",LMDP:"Life Cycle Mission Data Plan",LNE:"Late Network Entry",LNO:"Liaison Officers",LOA:"Letter of Offer and Acceptance",LORA:"Level of Repair Analysis",LOS:"Line of Sight",LR:"Limited Rights",LRDR:"Long Range Discrimination Radar",LRIP:"Low Rate Initial Production",LRSO:"Long Range Standoff",LRT:"Logistics Response Time",LRU:"Line-Replaceable Unit",LSC:"Logistics Support Concept",LSE:"Lead Systems Engineer",LSI:"Large Scale Integration OR Lead Systems Integrator",LTE:"Last Test Event",LTWG:"Logistics Test Working Group",LUT:"Limited User Test",LVC:"Live, Virtual, and Constructive","M&S":"Modeling and Simulation","M&S CO":"Modeling and Simulation Coordination Office",MAAP:"Master Air Attack Plan",MAAPTK:"Master Air Attack Planning Toolkit",MAC:"Mission Assurance Category",MACH:"Modular Air Crew Helmet",MADL:"Multifunction Advanced Data Link","MAF-DRC":"Mobility Air Forces-Dynamic Retasking Capability",MAFPS:"Mobility Air Force Automated Flight Planning Service",MAIS:"Major Automated Information System",MAJCOM:"Major Command","MALD-J":"Miniature Air Launched Decoy-Jammer",MANPAD:"Man Portable Air Defense System",MANPRINT:"Manpower and Personnel Integration",MAnTSS:"Modular Analysis and Test Support System",MAR:"Monthly Acquisition Report",MAV:"Maverick",MBITR:"Multiband Inter/Intra Team Radio",MBTD:"Mission Based Test Design",MC:"Mission Capable",MCF:"Mission Critical Functions",MCOTEA:"Marine Corps Operational Test and Evaluation Activity",MCR:"Message Completion Rate",MD:"Mission Directive",MDA:"Milestone Decision Authority OR Missile Defense Agency",MDAP:"Major Defense Acquisition Program",MDD:"Maintenance Data Documentation OR Material Development Decision",MDF:"Mission Data File",MDS:"Mission Design Series",MDT:"Mean Down Time","ME/SE":"Maintenance Engineering/Sustaining Engineering",MECSIP:"Mechanical Subsystems Integrity Plan",MEDALS:"Military Engineering Data Asset Locator System",MEFL:"Mission Essential Functions List",MEO:"Medium Earth Orbit",MER:"Manpower Estimate Report",MESL:"Minimum Essential Subsystems List",MEV:"Military Equipment Valuation",MFOQA:"Military Flight Operations Quality Assurance",MFP:"Major Force Program OR Materiel Fielding Plan",MFR:"Memorandum for Record",MFT:"Multi-Functional Team",MGRS:"Military Grid Referencing System","MGUE Inc 2 HH":"Military GPS User Equipment Hand Held",MGUE:"Military GPS User Equipment",MHS:"Modular Handgun System",MHz:"Megahertz","MIL-DTL":"Military Detail (Specification)","MIL-HDBK":"Military Handbook","MIL-PRF":"Military Performance (Specification)","MIL-STD":"Military Standard",MIP:"Materiel Improvement Program OR Military Intelligence Program",MIPR:"Military Interdepartmental Purchase Request",MIPRB:"Material Improvement Program Review Board",MLS:"Multiple Levels of Security",MMT:"Munitions, Missiles, and Target",MNS:"Mission Needs Statement",MOA:"Memorandum of Agreement",MOASP:"Management and Oversight of Acquisition Services Process",MOE:"Measure of Effectiveness",MOP:"Measure of Performance",MOPP:"Mission Oriented Protective Posture",MOS:"Measure of Suitability OR Military Occupational Specialty",MOSA:"Modular Open Systems Approach","MOT&E":"Multiservice Operational Test and Evaluation",MOU:"Memorandum of Understanding",MP:"Mission Profile",MPA:"Manpower Authorization",MPE:"Mission Planning Element",MPGPA:"Multipart GPS Pulse-per-Second Adapter",MPS:"Master Program Schedule OR Mission Planning System",MPTO:"Methods and Procedures Technical Order",MRA:"Manufacturing Readiness Assessment",MRB:"Mission Requirements Board",MRDS:"Man-Portable Radiological Detection System",MRL:"Manufacturing Readiness Level",MROi:"Air Force Depot Maintenance, Repair, and Overhaul Initiative",MRP:"Munitions Requirements Process",MRR:"Materiel Release Review",MRRB:"Maintenance Requirement Review Board",MRSP:"Mobility Readiness Spares Package",MRTFB:"Major Range and Test Facility Base",MS:"Milestone",MSA:"Materiel Solution Analysis",MSIAC:"Modeling and Simulation Information Analysis Center",MSL:"Mean Sea Level",MSSP:"Modeling and Simulation Support Plan",MTBEFF:"Mean Time Between Essential Function Failures",MTTR:"Mean Time To Repair",MUA:"Military Utility Assessment",MUOS:"Mobile User Objective System",MW:"Measures Workshop",NAOC:"National Airborne Operations Center",NASIC:"National Air and Space Intelligence Center",NATO:"North Atlantic Treaty Organization","NAVPLAN TPC":"Navigation Plan Tactical Pilotage Charts",NBC:"Nuclear, Biological and Chemical","NC2-ESI":"Nuclear Command and Control-Extremely Sensitive Information",NC3:"Nuclear Command, Control, Communications",NCOW:"Network-Centric Operations and Warfare","NCOW RM":"Net-Centric Operations and Warfare Reference Model",NDAA:"National Defense Authorization Act",NDF:"Network Design Facility",NDI:"Non-Developmental Item",NDS:"National Defense Strategy",NEPA:"National Environmental Policy Act",NET:"New Equipment Training",NetRA:"Network Risk Assessment",NEW:"Network Enabled Weapon",NGG:"Next Generation Geosynchronous Earth Orbit (GEO)",NGP:"Next Generation Polar",NGA:"National Geospatial-Intelligence Agency",NGB:"National Guard Bureau",NGCD:"Next Generation Chemical Detector",NGDS:"Next Generation Diagnostic System",NGREA:"National Guard and Reserve Equipment Account",NGS:"Non-Government Standard (commercial)",NID:"National Interest Determination",NIP:"National Intelligence Program",NIPRNet:"Non-Secure Internet Protocol Router Network",NISPOM:"National Industrial Security Program Operating Manual",NIST:"National Institute of Standards and Technology",NKCE:"Non-Kinetic Counter Electronics",NLT:"No or Not Later Than",NM:"Network Management",NMC:"Not Mission Capable",NMS:"National Military Strategy",NNMSB:"Nonnuclear Munitions Safety Board",NNSA:"National Nuclear Security Administration",NOU:"No Operational Utility",NPES:"Nuclear Planning and Execution System Modernization","NR KPP":"Net-Ready Key Performance Parameter",NRE:"Non-Recurring Engineering",NRO:"National Reconnaissance Office",NSA:"National Security Agency",NSL:"Near Strike Lightning",NSN:"National Stock Number",NSPS:"National Security Personnel System",NSS:"National Security Space OR National Security Strategy OR National Security System",NTTR:"Nevada Test and Training Range",NWC:"Nuclear Weapons Council",NWRM:"Nuclear Weapons Related Materiel","O&M":"Operation and Maintenance","O&S":"Operation and Support",OA:"Operational Assessment OR Operational Availability",OAG:"Operational Advisory Group (USN/USMC)",OAR:"Open-Air Range",OARL:"Operating at Risk List",OAS:"Office of Aerospace Studies","OASD/NII":"Office Assistant Secretary of Defense/Network and Information Integration",OASuW:"Offensive Anti-Surface Weapon",OC:"Operational Capability",OCA:"Original Classification Authority",OCC:"Occupational Specialty Code",OCDD:"Operational Capability Development Document",OCE:"Operational Concept of Employment",OCR:"Office of Collateral Responsibility OR Operational Capability Requirement",OCX:"GPS Next Generation Operational Control System",OE:"Operational Effectiveness OR Operational Environment",OEM:"Original Equipment Manufacturer",OER:"Operational Test Agency Evaluation Report",OFP:"Operational Flight Program",OFS:"Operational Flight Software",OIPT:"Overarching Integrated Product Team",OL:"Operating Location",OMB:"Office of Management and Budget",OML:"Outer Mold Line",OMS:"Operational Mission Summary OR Operational Mode Summary",OND:"Operational Need Date",OPIR:"Overhead Persistent Infrared",OPLAN:"Operations Plan",OPORD:"Operations Order",OPR:"Office of Primary Responsibility",OPSEC:"Operations Security",OPTEMPO:"Operational Tempo",OPTEVFOR:"Operational Test and Evaluation Force",ORD:"Operational Requirements Document",ORM:"Operational Risk Management",OS:"Operational Suitability",OSD:"Office of the Secretary of Defense",OSHA:"Occupational Safety and Health Administration","OSS&E":"Operational Safety, Suitability, and Effectiveness",OT:"Operational Test","OT&E":"Operational Test and Evaluation",OTA:"Operational Test Agency OR Other Transactions Authority",OTAR:"Over-the-Air Re-key",OTB:"Over Target Baseline",OTC:"United States Army Operational Test Command",OTD:"Open Technology Development",OTI:"Operational Training Infrastructure",OTIF:"Operational Test Information Files",OTO:"Operational Test Organization",OTRR:"Operational Test Readiness Review",OTS:"Over Target Schedule",OU:"Operational Utility",OUA:"Operational Utility Assessment",OUE:"Operational Utility Evaluation",OUSD:"Office of the Under Secretary of Defense",OV:"Operational View (or Viewpoint)",OWLP:"Overseas Workload Program","P&D":"Production and Deployment (phase)",P3I:"Pre-Planned Product Improvement",PA:"Partnering Arrangement OR Preparing Activity OR Preparing Authority OR Program Authorization ORPublic Affairs",PAA:"Phased Adaptive Approach",PAD:"Program Action Directive",PAM:"Pamphlet OR Performance Attributes Matrix",PAR:"Presidential Aircraft Recapitalization OR Proposal Analysis Report",PAS:"Personnel Accounting Symbol","PAT&E":"Production Acceptance Test and Evaluation",PAUC:"Program Acquisition Unit Cost",PB:"President’s Budget",PBA:"Performance Based Acquisition OR Performance Based Agreement",PBCM:"Portable Biological Containment Module",PBL:"Performance Based Logistics",PBR:"Program/Budget Review",PC:"Product Center",PCC:"Program Control Chief",PCO:"Procuring Contracting Officer",PD:"Program Director",PDAQ:"Product Data Acquisition",PDM:"Program Decision Memorandum OR Programmed Depot Maintenance",PDR:"Preliminary Design Review",PE:"Program Element",PEM:"Program Element Monitor",PEO:"Program Executive Office / Officer",PESD:"Personnel Electrostatic Discharge",PESHE:"Programmatic Environment, Safety, and Occupational Health Evaluation",PG:"Product Group",PGI:"Procedures, Guidance, and Information",PGL:"Program Guidance Letter",PGM:"Precision Guided Munitions OR Product Group Manager","PHS&T":"Packaging, Handling, Storage, and Transportation",PIA:"Privacy Impact Assessment",PID:"Program Introduction Document",PII:"Personally Identifiable Information",PIR:"Post-Implementation Review",PISR:"Persistent Intelligence, Surveillance, and Reconnaissance",PIT:"Platform Information Technology",PL:"Public Law",PLI:"Position Location Information",PLMS:"Product Lifecycle Management System",PLR:"Position Location Recorder",PM:"Program Manager","PM/MFT":"Program Management or Multi-Functional Team",PMA:"Program Management Agreement",PMB:"Performance Measurement Baseline",PMC:"Partially Mission Capable",PMCS:"Preventive Maintenance Checks and Services",PMD:"Program Management Directive",PML:"Program Management Listing",PMO:"Program Management Office",PMRT:"Program Management Resource Tools",PMT:"Program Manager‘s Tool",PNVC:"Presidential and National Voice Conferencing",PO:"Program Office OR Project Officer","POA&M":"Plan of Action & Milestones",POC:"Point of Contact",POE:"Program Office Estimates",POM:"Program Objective Memorandum",POMx:"Point of Maintenance",PoPS:"Probability of Program Success",PoR:"Program of Record",POS:"Pre-Operational Support",POU:"Partial Operational Utility",PPBE:"Planning, Programming, Budgeting, and Execution","P-PLAN":"Programming Plan",PPLANS:"Programming Plans",PPP:"Program Protection Plan OR Public-Private Partnership",PPQT:"Pre-Production Qualification Test",PPR:"Post-Publication Review",PQT:"Production Qualification Test",PRA:"Performance Risk Assessment",PRO:"Portable Rugged Objected",PRR:"Production Readiness Review","PS-BCA":"Product Support Business Case Analysis",PSEAG:"Physical Security Equipment Action Group",PSI:"Product Support Integrator",PSIP:"Propulsion Systems Integrity Program",PSM:"Product Support Manager",PSMP:"Product Support Management Plan",PSN:"Publication Stock Number",PSP:"Product Support Provider",PSpec:"Preliminary Specification",PSR:"Program Support Review",PTES:"Protected Tactical Enterprise Services",PTO:"Participating Test Organization OR Preliminary Technical Order",PTS:"Protected Tactical SATCOM",PTSS:"Precision Tracking Space System",PV:"Project Viewpoint",PVI:"Pilot Vehicle Interface",PWS:"Performance Work Statement",QDR:"Quadrennial Defense Review",QoS:"Quality of Service","QOT&E":"Qualification Operational Test and Evaluation",QRC:"Quick Reaction Capability",QRF:"Quick Reaction Fund",QRG:"Quick Reference Guide",QRIP:"Quick Reaction Instrumentation Package","QT&E":"Qualification Test and Evaluation","R&D":"Research and Development","R&M":"Reliability and Maintainability","R/T":"Request for Test",RAA:"Rapid Acquisition Authority OR Required Assets Available",RADAR:"Radio Detection and Ranging",RAI:"Recorded Aircraft Information",RALOT:"Risk Assessment Level of Test",RAM:"Reliability, Availability, and Maintainability","RAM&C":"Reliability, Availability, Maintainability, and Cost",RAMPOD:"Reliability, Availability, Maintainability for Pods and Integrated Systems",RAMS:"Reliability, Availability, Maintainability, and Supportability",RAPIDS:"Rapid Analysis Processing Instrumentation Deployment System",RC:"Recommended Changes",RCA:"Regulatory Contracting Approval",RCM:"Reliability Centered Maintenance",RCN:"Report Control Number",RCT:"Requirements Correlation Table",RD:"Restricted Data",RDGT:"Reliability Development/Growth Test",RDS:"Radiological Detection System OR Records Disposition Schedule","RDT&E":"Research, Development, Test and Evaluation",REMIS:"Reliability and Maintainability Information System",RF:"Radio Frequency",RFID:"Radio Frequency Identification",RFP:"Request for Proposal",RGC:"Reliability Growth Curve",RI3:"Risk Identification: Integration & -Ilities",RICS2:"Remote Reconfigurable Intelligent Instrumentation to Control, Collect, Simulate and Stimulate",RIID:"Radioisotope Identification Detector",RLA:"Rotary Launcher Assembly",RM:"Reference Manual OR Risk Management","RM&A":"Reliability, Maintainability and Availability",RMCT:"Requirements Management Certification Training",RMD:"Requirements Management Division",RMF:"Risk Management Framework",RMP:"Radar Modernization Program OR Risk Management Plan",ROM:"Rough Order of Magnitude",RPA:"Remotely Piloted Aircraft",RPIE:"Real Property Installed Equipment","RQ-4B Bk 30 MSI":"RQ-4B Block 30 Multi-Spectral Intelligence",RR:"Rifleman Radio",RRB:"Requirements Review Board",RRF:"Rapid Reaction Fund",RRP:"Rapid Response Process",RS:"Radiated Susceptibility",RSE:"Radar Signal Emulator",RSR:"Requirements Strategy Review",RTKN:"Real Time Kill Notification",RTO:"Radio Telephone Operator OR Ready for Transition to Operations ORResponsible Test Organization (now obsolete) OR Range Training Officer","R-TOC":"Reduction of Total Ownership Cost",RTT:"Readiness to Test","S&T":"Science and Technology",S2E2:"Space Based Infrared Sys (SBIRS) Survivable and Endurable Evolution",SA:"Security Assistance OR Situational Awareness OR System Administrator",SAASM:"Selective Availability Anti-Spoofing Module",SAE:"Service Acquisition Executive",SAF:"Secretary of the Air Force","SAF/AQ":"Assistant Secretary of the Air Force (Acquisition)","SAF/AQX":"Deputy Assistant Secretary for Acquisition Integration","SAF/CIO A6":"Chief of Warfighting Integration and Chief Information Officer (CIO)","SAF/FM":"Assistant Secretary of the Air Force (Financial Management)","SAF/FMC":"Deputy Assistant Secretary (DAS) of the Air Force for Cost and Economics","SAF/GC":"General Counsel of the Air Force","SAF/GCQ":"Deputy General Counsel (Acquisition)","SAF/IE":"Assistant Secretary of the Air Force (Installations, Environment, and Logistics","SAF/IG":"Inspector General of the Air Force","SAF/LL":"Assistant Secretary of the Air Force (Legislative Affairs)","SAF/US":"Under Secretary of the Air Force","SAF/XC":"Secretary of the Air Force Directorate (Warfighting Integration and Chief Information Officer)",SAM:"Support Agreement Manager",SAMP:"Single Acquisition Management Plan",SAO:"Security Assistance Organizations",SAP:"Security Assessment Plan OR Security Assistance Program OR Special Access Program",SAPCO:"Special Access Program Control Office",SAR:"Security Assessment Report OR Special Access Required OR Synthetic Aperture Radar OR System Assessment Report",SATAF:"Site Activation Task Force",SATCOM:"Satellite Communications",SATOP:"Security Assistance Technical Order Program",SB:"Small Business",SBIR:"Small Business Innovation Research",SBIRS:"Space Based Infrared System","SBIRS F/O":"Space Based Infrared System Follow-on",SBRA:"Smart Bomb Rack Assembly","SBSS F/O":"Space Based Space Surveillance Follow-On",SCD:"System Capabilities Document",SCG:"Security Classification Guide",SCI:"Sensitive Compartmented Information",SCM:"Supply Chain Manager",SCO:"Senior Contracting Official",SCP:"Service Cost Position",SCRM:"Supply Chain Risk Management",SCWDL:"Strike Common Weapon Data Link",SD:"Standardization Document",SDB:"Small Diameter Bomb",SDD:"System Development and Demonstration",SDO:"Services Designated Official",SDR:"System Design Review",SE:"Safety OR Support Equipment OR Systems Engineering","SE/ATS":"Support Equipment/Automatic Test System",SEAD:"Suppression of Enemy Air Defenses",SEAM:"Systems Engineering Assessment Model",SECAF:"Secretary of the Air Force",SECDEF:"Secretary of Defense",SEI:"Software Engineering Institute",SENSR:"Spectrum Efficient National Surveillance Radar System",SEP:"System Evaluation Plan OR Systems Engineering Plan",SERD:"Support Equipment Recommendation Data",SES:"Senior Executive Service",SESAME:"Selected Essential Item Stockage for Availability Methodology",SF:"Security Forces OR Standard Form",SFF:"Small Form Fit",SFR:"System Functional Review",SIAO:"Senior Information Assurance Official",SIGINT:"Signals Intelligence",SII:"Special Interest Item",SIM:"Serialized Item Management",SIMAF:"Simulation and Analysis Facility",SIMCERT:"Simulator Certification",SIMVAL:"Simulator Validation",SIO:"Senior Intelligence Officer","SIOP-ESI":"Single Integrated Operational Plan-Extremely Sensitive Information",SIP:"System Identification Profile OR System Information Profile",SIPC:"Service Intelligence Production Centers",SIPRNET:"Secret Internet Protocol Router Network",SISSU:"Security, Interoperability, Supportability, Sustainability, and Usability",SITREP:"Situational Report",SLA:"Service Level Agreements","SLAM-ER":"Standoff Land Attack Missile Expanded Response",SLEP:"Service Life Extension Program",SLIN:"Sub-Line Item Number",SM:"Security Manager OR Service Manager OR Single Manager",SMART:"Science, Mathematics, And Research For Transformation OR System Metrics and Reporting Tool",SMC:"Space and Missile Systems Center",SMCA:"Single Manager for Conventional Ammunition",SME:"Subject Matter Expert",SMI:"Soldier-Machine Interface",SMM:"System Maturity Matrix","SOC RPA":"Standardized Operations Center Remotely Piloted Aircraft",SOC:"Statement of Capabilities",SOCOM:"Special Operations Command",SOF:"Special Operations Forces",SOI:"Statement of Intent",SOO:"Statement of Objectives","SO-P":"Special Operations-Peculiar",SOR:"Source of Repair",SORA:"Source of Repair Assignment",SORAP:"Source of Repair Assignment Process",SORN:"System of Record Notice",SoS:"Speed of Service OR System of Systems",SOTR:"Sufficiency of Operational Test Review OR Sufficiency of Test Report",SOW:"Special Operations Wing OR Statement of Work",SP:"Security Plan OR Special Publication",SPA:"Single Point Adjustment",SPD:"System Program Director",SPE:"Senior Procurement Executive",SPG:"Strategic Planning Guidance",SPM:"System Program Manager",SPML:"Sustainment Program Master List",SPO:"System Program Office",SpOC:"Space Operations Command",SPT:"Systems Planning Team",SQL:"Structured Query Language",SRA:"Schedule Risk Assessment",SRB:"Safety Review Board",SRD:"Software or Systems Requirements Document",SRR:"System Requirements Review OR Systems Readiness Review",SRW:"Soldier Radio Waveform",SSA:"Source Selection Authority",SSAA:"Systems Security Authorization Agreement",SSAEM:"Space Situational Awareness-Environmental Monitoring",SSD:"Source Selection Decision",SSDD:"Source Selection Decision Document",SSE:"Systems Security Engineering",SSET:"Source Selection Evaluation Team",SSM:"System Sustainment Manager",SSN:"Social Security Number",SSOM:"Standard Surveillance Operating Manual",SSOR:"Strategic Source of Repair",SSP:"Source Selection Plan OR System Support Package",SSS:"Staff Summary Sheet",SSWG:"Systems Security Working Group",STA:"System Threat Analysis OR System Threat Assessment",STAR:"System Threat Assessment Report",STARCOM:"Space Training and Readiness Command",STAT:"Scientific Test and Analysis Techniques",StdV:"Standards Viewpoint",STEP:"Standard for Exchange of Product",STIG:"Security Technical Implementation Guide",STINFO:"Scientific and Technical Information",STP:"Space Test Program OR System Training Plan",STR:"Sea Test Range",STT:"Strategy-To-Task",STTR:"Small Business Technology Transfer",SUT:"System Under Test",SV:"System View",SVAD:"Survivability, Vulnerability, and Assessment Directorate",SvcV:"Services Viewpoint",SVR:"System Verification Review",SwA:"Software Assurance",SYSCOM:"Systems Command","T&E ITT":"Test and Evaluation Integrated Test Team","T&E":"Test and Evaluation",TA:"Technical Advisor OR Test Area",TAA:"Technical Airworthiness Authority",TACO:"Test and Checkout",TACP:"Tactical Air Control Party","TACP-M":"Tactical Air Control Party-Modernization",TASS:"Tactical Automated Security System",TBD:"To Be Determined","TCM-TR":"TRADOC Capabilities Manager-Tactical Radios",TCT:"Total Contract Training",TCTO:"Time Compliance Technical Order",TD:"Test Director OR Technical Director OR Technology Development OR Technology Director","TD&E":"Tactics Development and Evaluation",TDM:"Test Design Manager",TDP:"Technical Data Package",TDR:"Test Design Requirement",TDS:"Technology Development Strategy",TDSB:"Test Data Scoring Board",TDY:"Temporary Duty",TE:"Technical Editor OR Test Evaluation",TEI:"Text Element Identifiers",TEMP:"Test and Evaluation Master Plan",TEMPEST:"Transient Electromagnetic Pulse Surveillance Technology",TEO:"Technology Executive Officers",TES:"Test and Evaluation Strategy",TFI:"Total Force Integration",TIPT:"Test Integrated Product Team",TIR:"Test Incident Report",TIS:"Test Information Sheet",TISP:"Tailored Information Support Plan",TKA:"Tail Kit Assembly",TLDHS:"Target Location, Designation, and Hand-Off System",TLE:"Target Location Error",TM:"Technical Manual OR Telemetry OR Test Manager",TMCR:"Technical Manual Contract Requirement",TMDE:"Test Measurement Diagnostic Equipment",TMIPJ:"Theater Medical Information Program-Joint",TMLA:"Triple Missile Launcher Adapter",TMRR:"Technology Maturation & Risk Reduction (phase)",TMSS:"Technical Manual Specifications and Standards",TMT:"Task Management Tool",TNMCM:"Total Not Mission Capable-Maintenance",TNMCS:"Total Not Mission Capable-Supply",TO:"Tasking Order OR Technical Order",TOA:"Total Obligation Authority",TOAC:"Technical Order Advisory Council",TOC:"Tactical Operation Center OR Total Ownership Cost OR Table of Contents",TODO:"Technical Order Distribution Office",TOMA:"Technical Order Management Agency",TPCF:"Test Program Case File",TPM:"Technical Performance Measure OR Test Program Management",TPP:"Technology Protection Plan",TPS:"Test Program Set",TPT:"Training Planning Team",TPWG:"Test Plan Working Group",TR:"Technical Review",TRA:"Technology Readiness Assessment",TRADOC:"Training and Doctrine Command (US Army)",TRB:"Technical Review Board",TRD:"Technical Requirements Document",TRL:"Technology Readiness Level",TRM:"Technology Reference Model OR Test Resource Manager",TRMC:"Test Resource Management Center",TRP:"Test Resource Plan",TRR:"Test Readiness Review",TS:"Test Squadron OR Top Secret",TSN:"Trusted Systems & Networks",TSP:"Test Support Plan OR Transfer Support Plan OR Transition Support Plan","TS-PGM":"Training System Product Group Manager",TSPI:"Time / Space / Position Information",TSRA:"Training System Requirements Analysis",TTCP:"The Technology Cooperation Program",TTP:"Tactics, Techniques, and Procedures OR Technology Transition Plan",TV:"Technical View",TW:"Test Wing",UAI:"Universal Armament",UAS:"Unmanned Aerial Systems",UAV:"Unmanned Aerial Vehicle",UC:"Unified Capabilities",UCA:"Undefinitized Contract Action",UCC:"Unified Combatant Commander",UHF:"Ultra-High Frequency",UID:"Unique Identification number",UIF:"Unfavorable Information File",UII:"Unique Item Identifier",UIPE:"Uniform Integrated Protection Ensemble",UJTL:"Universal Joint Task List",ULB:"Underwater Locator Beacon",ULO:"Unliquidated Obligation",UON:"Urgent Operational Need",UOTT:"US Operational Test Team",UP:"Unified Platform",URA:"User Representative Agency",URL:"Uniform Resource Locator",URN:"Unit Reference Number",USAF:"United States Air Force",USAFWC:"United States Air Force Warfare Center",USB:"Universal Serial Bus",USC:"United States Code",USD:"Undersecretary of Defense",USecAF:"Under Secretary of the Air Force",USMC:"United States Marine Corps",USSF:"United States Space Force",USSOCOM:"U.S. Special Operations Command",UTC:"Coordinated Universal Time",UTTR:"Utah Test and Training Range","V&V":"Verification and Validation",VCJCS:"Vice Chairman of the Joint Chiefs of Staff",VCSAF:"Vice Chief of Staff of the United States Air Force",VCSO:"Vice Chief of Space Operations",VE:"Value Engineering",VECP:"Value Engineering Change Proposal",VEP:"Value Engineering Proposal",VHF:"Very High Frequency",VIDOC:"Visual Information Documentation",VIM:"Visual Information Manager",VMC:"Visual Meteorological Conditions",VML:"Vulnerable to Move List",VMP:"Vulnerability Management Process",VOLT:"Validated Online Lifecycle Threat",VPV:"Virtual Prime Vendor",VSP:"Verification Status Page",VSTAR:"Virtual System Threat Assessment Report",VTC:"Video Teleconference","VV&A":"Verification, Validation and Accreditation",WAS:"Wide Area Surveillance",WAWF:"Wide Area Workflow",WBS:"Work Breakdown Schedule",WCF:"Working Capital Fund",WIPT:"WorkingLevel Integrated Product Team",WIT:"Watch Item Tracking",WMA:"Warfighting Mission Area",WMD:"weapons of mass destruction",WRAP:"Warfighter Rapid Acquisition Process","WS3 SLEP":"Weapons Storage and Security System Service Life Extension Program",WSEP:"Weapon System Evaluation Program",WSER:"Weapon System Enterprise Reviews","WSF-EO/IR":"Weather Satellite Follow-on Electro-Optical /Infra-Red","WSF-M":"Weather Satellite Follow-on Microwave",WSI:"Weapon System Integration OR Weapon System Integrity",WSIG:"Weapon System Integrity Guide",WSIP:"Weapon System Integrity Program",WSMR:"White Sands Missile Range",WSSP:"Weapons System Support Program",WX:"Weather",XDR:"Extended Data Rate",YTD:"Year to Date"}}}],extensions:[".mdx",".md"],defaultLayouts:{},remarkPlugins:[],rehypePlugins:[],mediaTypes:["text/markdown","text/x-markdown"]}},{plugin:n("b9Nj"),options:{plugins:[],trackingId:null,head:!0,anonymize:!1}},{plugin:n("GddB"),options:{plugins:[]}}]},M53A:function(e,t,n){e.exports=n.p+"static/logo-8619e329fe17a156b627acc1b8227098.svg"},ME5O:function(e,t,n){"use strict";t.a={animationIterationCount:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1}},MMVs:function(e,t,n){e.exports=function(){var e=!1;-1!==navigator.appVersion.indexOf("MSIE 10")&&(e=!0);var t,n=[],r="object"==typeof document&&document,a=e?r.documentElement.doScroll("left"):r.documentElement.doScroll,i=r&&(a?/^loaded|^c/:/^loaded|^i|^c/).test(r.readyState);return!i&&r&&r.addEventListener("DOMContentLoaded",t=function(){for(r.removeEventListener("DOMContentLoaded",t),i=1;t=n.shift();)t()}),function(e){i?setTimeout(e,0):n.push(e)}}()},MiSq:function(e,t,n){"use strict";n.d(t,"a",(function(){return g}));var r=function(e){for(var t,n=0,r=0,a=e.length;a>=4;++r,a-=4)t=1540483477*(65535&(t=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(a){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+(59797*(n>>>16)<<16)}return(((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)},a=n("ME5O"),i=n("4qRI"),o=/[A-Z]|^ms/g,s=/_EMO_([^_]+?)_([^]*?)_EMO_/g,c=function(e){return 45===e.charCodeAt(1)},l=function(e){return null!=e&&"boolean"!=typeof e},u=Object(i.a)((function(e){return c(e)?e:e.replace(o,"-$&").toLowerCase()})),d=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(s,(function(e,t,n){return f={name:t,styles:n,next:f},t}))}return 1===a.a[e]||c(e)||"number"!=typeof t||0===t?t:t+"px"};function p(e,t,n,r){if(null==n)return"";if(void 0!==n.__emotion_styles)return n;switch(typeof n){case"boolean":return"";case"object":if(1===n.anim)return f={name:n.name,styles:n.styles,next:f},n.name;if(void 0!==n.styles){var a=n.next;if(void 0!==a)for(;void 0!==a;)f={name:a.name,styles:a.styles,next:f},a=a.next;return n.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var a=0;a1){c={types:["template-string","string"],content:e.content.slice(1)};var n={types:["operator"],content:e.content.charAt(0)};return Object(S.d)(o.Fragment,{key:e+t},Object(S.d)("span",Object(f.a)({},i({token:n,key:t}),{style:l})),Object(S.d)("span",i({token:c,key:t})))}return Object(S.d)("span",Object(f.a)({},i({token:e,key:t}),{style:l}))}return Object(S.d)("span",i({token:e,key:t}))})))})))}))},E=function(e){var t=e.children,n=Object(g.a)(e,["children"]);return t?Object(S.d)("a",{href:n.href,target:"_blank",rel:"noopener noreferrer"},t):null},T=Object(m.a)("pre",{target:"e2z1ahw0"})("padding:16px;background:",(function(e){return e.theme.colors.preFormattedText}),";"),P={h1:function(e){return Object(S.d)("h1",Object(f.a)({className:"heading1",id:e.children.replace(/\s+/g,"").toLowerCase()},e))},p:function(e){return Object(S.d)("p",Object(f.a)({className:"paragraph"},e))},pre:function(e){return Object(S.d)(T,null,Object(S.d)("pre",e))},code:C,a:E},I=n("lSNA"),R=n.n(I),w=n("gRFL");n("pVnL"),n("2mql");function M(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var D=function(e,t){return"function"==typeof t?t(e):function(e){for(var t=1;t=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function ne(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);nt.label?1:0}))}));var s=H.a.gatsby&&H.a.gatsby.trailingSlash?r.length-2:r.length-1,c=a.findIndex((function(e){return e.label===r[s]}));return a.length&&e.items.unshift(a.splice(c,1)[0]),e}),t)}(t)}))[0],a={};n.items.forEach((function(e){H.a.sidebar.collapsedNav&&H.a.sidebar.collapsedNav.includes(e.url)?a[e.url]=!0:a[e.url]=!1}));var i=Object(o.useState)(a),s=i[0],c=i[1];return Object(S.d)(Z,Object(f.a)({className:(H.a.sidebar.frontLine?"showFrontLine":"hideFrontLine")+" firstLevel",setCollapsed:function(e){var t;c(ee(ee({},s),{},((t={})[e]=!s[e],t)))},collapsed:s},n))};function ae(){return(ae=Object.assign||function(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var oe=Object(o.forwardRef)((function(e,t){var n=e.color,r=void 0===n?"currentColor":n,a=e.size,i=void 0===a?24:a,o=ie(e,["color","size"]);return s.a.createElement("svg",ae({ref:t,xmlns:"http://www.w3.org/2000/svg",width:i,height:i,viewBox:"0 0 24 24",fill:"none",stroke:r,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},o),s.a.createElement("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),s.a.createElement("polyline",{points:"15 3 21 3 21 9"}),s.a.createElement("line",{x1:"10",y1:"14",x2:"21",y2:"3"}))}));oe.displayName="ExternalLink";var se=oe;var ce=Object(m.a)((function(e){var t=e.className,n=(e.active,e.level,Object(g.a)(e,["className","active","level"]));return Object(S.d)("li",{className:t},Object(S.d)("a",Object(f.a)({href:n.to},n,{target:"_blank",rel:"noopener noreferrer"}),n.children))}),{target:"e1cpd07x0"})("list-style:none;a{color:#5c6975;text-decoration:none;font-weight:",(function(e){return 0===e.level?700:400}),";padding:0.45rem 0 0.45rem ",(function(e){return 2+1*(e.level||0)}),"rem;display:block;position:relative;&:hover{color:#2dc4f3 !important;}",(function(e){return e.active&&"\n // color: #663399;\n border-color: rgb(230,236,241) !important;\n border-style: solid none solid solid;\n border-width: 1px 0px 1px 1px;\n background-color: #fff;\n "})," svg{float:right;margin-right:1rem;}}"),le=Object(m.a)("aside",{target:"e1cpd07x1"})({name:"8uxxw2",styles:"width:100%;height:100vh;overflow:auto;position:fixed;padding-left:0px;position:-webkit-sticky;position:-moz-sticky;position:sticky;top:0;padding-right:0;-webkit-box-shadow:-1px 0px 4px 1px rgba(175,158,232,0.4);@media only screen and (max-width:1023px){width:100%;height:100vh;}@media (min-width:767px) and (max-width:1023px){padding-left:0;}@media only screen and (max-width:767px){padding-left:0px;height:auto;}"}),ue=Object(m.a)((function(e){return Object(S.d)("li",e,Object(S.d)("hr",null))}),{target:"e1cpd07x2"})({name:"1q387v1",styles:"list-style:none;padding:0.5rem 0;hr{margin:0;padding:0;border:0;border-bottom:1px solid #ede7f3;}"}),de=function(e){e.location;return Object(S.d)(u.StaticQuery,{query:"2619113677",render:function(e){var t=e.allMdx;return Object(S.d)(le,null,H.a.sidebar.title?Object(S.d)("div",{className:"sidebarTitle hiddenMobile",dangerouslySetInnerHTML:{__html:H.a.sidebar.title}}):null,Object(S.d)("ul",{className:"sideBarUL"},Object(S.d)(re,{edges:t.edges}),H.a.sidebar.links&&H.a.sidebar.links.length>0&&Object(S.d)(ue,null),H.a.sidebar.links.map((function(e,t){if(""!==e.link&&""!==e.text)return Object(S.d)(ce,{key:t,to:e.link},e.text,Object(S.d)(se,{size:14}))}))))}})},pe=n("ZIiI"),fe=!(!H.a.header.search||!H.a.header.search.enabled),me=[];fe&&H.a.header.search.indexName&&me.push({name:""+H.a.header.search.indexName,title:"Results",hitComp:"PageHit"});var ge=A()({loader:function(){return Promise.all([n.e(0),n.e(8)]).then(n.bind(null,"GMNA"))},loading:v});function he(){var e=document.getElementById("navbar");"topnav"===e.className?e.className+=" responsive":e.className="topnav"}var ye=Object(m.a)("div",{target:"e1uaxj470"})("height:60px;box-shadow:0 3px 6px 0 rgba(0,0,0,0.16);background-color:#f8f8f8;position:relative;display:none;background:",(function(e){return e.isDarkThemeActive?"#001932":void 0}),";@media (max-width:767px){display:block;}"),be=function(e){var t=e.location,r=e.isDarkThemeActive,a=e.toggleActiveTheme;return Object(S.d)(u.StaticQuery,{query:"1685914912",render:function(e){var i=n("M53A"),o=n("BFUG"),s=(n("ai/O"),n("3hAw"),e.site.siteMetadata),c=s.headerTitle,l=s.helpUrl,u=s.tweetText,d=s.logo,p=s.headerLinks,f=""!==d.link?d.link:"https://www.afotec.af.mil/";return Object(S.d)("div",{className:"navBarWrapper"},Object(S.d)("nav",{className:"navBarDefault"},Object(S.d)("div",{className:"navBarHeader"},Object(S.d)(U,{to:f,className:"navBarBrand"},Object(S.d)("img",{className:"img-responsive displayInline",src:""!==d.image?d.image:i,alt:"logo"})),Object(S.d)("div",{className:"headerTitle displayInline",dangerouslySetInnerHTML:{__html:c}})),H.a.header.social?Object(S.d)("ul",{className:"socialWrapper visibleMobileView",dangerouslySetInnerHTML:{__html:H.a.header.social}}):null,Object(S.d)("div",{id:"navbar",className:"topnav"},Object(S.d)("div",{className:"visibleMobile"},Object(S.d)(de,{location:t}),Object(S.d)("hr",null)),Object(S.d)("ul",{className:"navBarUL navBarNav navBarULRight"},p.map((function(e,t){if(""!==e.link&&""!==e.text)return Object(S.d)("li",{key:t},Object(S.d)("a",{className:"sidebarLink",href:e.link,target:"_blank",rel:"noopener noreferrer",dangerouslySetInnerHTML:{__html:e.text}}))})),""!==l?Object(S.d)("li",null,Object(S.d)("a",{href:l},Object(S.d)("img",{src:pe,alt:"Help icon"}))):null,""!==u?Object(S.d)("li",null,Object(S.d)("a",{href:"https://twitter.com/intent/tweet?&text="+u,target:"_blank",rel:"noopener noreferrer"},Object(S.d)("img",{className:"shareIcon",src:o,alt:"Twitter"}))):null,""!==u?Object(S.d)("li",{className:"divider hiddenMobile"}):null,H.a.header.social?Object(S.d)("li",{className:"hiddenMobile"},Object(S.d)("ul",{className:"socialWrapper",dangerouslySetInnerHTML:{__html:H.a.header.social}})):null,Object(S.d)("li",null,Object(S.d)("div",{className:"headerTitleReleasable displayInline",dangerouslySetInnerHTML:{__html:"There are no releasability restrictions on this publication"}})),Object(S.d)("li",null,Object(S.d)($,{isDarkThemeActive:r,toggleActiveTheme:a})),fe?Object(S.d)("div",{className:"searchWrapper hiddenMobile navBarUL"},Object(S.d)(ge,{collapse:!0,indices:me})):null))),Object(S.d)(ye,{isDarkThemeActive:r},Object(S.d)("div",{className:"navBarDefault removePadd"},Object(S.d)("span",{onClick:he,className:"navBarToggle",onKeyDown:he,role:"button",tabIndex:0},Object(S.d)("span",{className:"iconBar"}),Object(S.d)("span",{className:"iconBar"}),Object(S.d)("span",{className:"iconBar"}))),fe?Object(S.d)("div",{className:"searchWrapper"},Object(S.d)(ge,{collapse:!0,indices:me})):null))}})},Ae=n("TqVZ"),Se=n("MiSq"),ve=n("SIPS");function Oe(e,t){if(void 0===e.inserted[t.name])return e.insert("",t,e.sheet,!0)}function Ce(e,t,n){var r=[],a=Object(ve.a)(e,r,n);return r.length<2?n:a+t(r)}var Ee=function e(t){for(var n="",r=0;r a{background-color:#2dc4f3;color:#fff !important;}.firstLevel ul li .collapser svg path{fill:#fff !important;}.active .collapser > svg > path{fill:#001933 !important;}.firstLevel ul .item ul .item{border-left:1px solid #e6ecf1;}.sideBarUL .item{list-style:none;padding:0;}.sideBarUL .item > a{color:#2dc4f3;text-decoration:none;display:flex;align-items:center;position:relative;width:100%;padding-right:35px;padding-left:15px;}.showFrontLine .item > a:hover{background-color:#001933;}.showFrontLine .active > a{background-color:#001933;}.sideBarUL .item .item{margin-left:16px;}.firstLevel > ul > .item{margin-left:0 !important;}.showFrontLine .item .item{border-left:1px solid #e6ecf1;border-left-color:rgb(230,236,241);padding:0;width:calc(100% - 16px) !important;}.showFrontLine .item .active > a{border-color:rgb(230,236,241) !important;border-style:solid none solid solid;border-width:1px 0px 1px 1px;background-color:#2dc4f3 !important;color:#fff;}.titleWrapper{display:flex;align-items:center;padding-bottom:40px;border-bottom:1px solid rgb(230,236,241);margin-bottom:32px;}.gitBtn{height:30px;min-height:30px;display:flex;align-items:center;}.gitBtn img{width:15px;display:inline-block;margin-right:5px;}.addPaddTopBottom{padding:50px 0;}.preRightWrapper{display:block;margin:0px;flex:1 1 0%;padding:16px;text-align:right;}.smallContent{display:block;margin:0px;padding:0px;color:#6e6e6e;}.smallContent span{font-size:12px;line-height:1.625;font-weight:400;}.nextRightWrapper{display:block;margin:0px;padding:16px;flex:1 1 0%;}table{padding:0;}table tr{border-top:1px solid #cccccc;margin:0;padding:0;}table tr:nth-child(2n){background-color:#f8f8f8;}table tr th{font-weight:bold;border:1px solid #cccccc;text-align:left;margin:0;padding:6px 13px;}table tr td{border:1px solid #cccccc;text-align:left;margin:0;padding:6px 13px;}table tr th:first-child,table tr td:first-child{margin-top:0;}table tr th:last-child,table tr td:last-child{margin-bottom:0;}img{max-width:100%;}.communitySection{font-size:24px;font-weight:700;}.authorSection{padding:20px 0;}.authorSection,.authorName{display:flex;align-items:center;}.authorImg img{width:75px;height:75px;border-radius:50%;min-width:75px;max-width:75px;min-height:75px;max-height:75px;}.authorDetails{padding-left:10px;}.authorDesc{padding-top:5px;font-size:14px;}.authorName img{margin-left:10px;display:inline-block;width:20px;}.authorName img:hover{opacity:0.7;}.heading1{font-size:26px;font-weight:800;line-height:1.5;margin-bottom:16px;margin-top:32px;}.heading2{font-size:24px;font-weight:700;line-height:1.5;margin-bottom:16px;margin-top:32px;}.heading3{font-size:20px;font-weight:600;line-height:1.5;margin-bottom:16px;margin-top:32px;}.heading4{font-size:18px;font-weight:500;line-height:1.5;margin-bottom:16px;margin-top:32px;}.heading5{font-size:16px;font-weight:400;line-height:1.5;margin-bottom:16px;margin-top:32px;}.heading6{font-size:14px;font-weight:300;line-height:1.5;margin-bottom:16px;margin-top:32px;}.paragraph{margin:16px 0px 32px;line-height:1.625;}.pre{font-size:14px;margin:0px;padding:16px;overflow:auto;}.topnav{-webkit-transition:top 0.5s,bottom 0.5s;}@media (max-width:767px){.formElement svg path{fill:#001934;}.visibleMobileView{display:block !important;}.searchInput{color:#001934;}.socialWrapper{position:absolute;right:10px;top:29px;}.responsive{margin-top:15px;position:relative;padding-bottom:20px;border-top:1px solid #fff;}.headerTitle{padding-right:50px;font-size:16px;}.navBarBrand{min-height:40px;}.navBarBrand img{margin-right:8px;}.topnav.responsive .visibleMobile{display:block;}.topnav .navBarUL{display:none;}.topnav.responsive .navBarUL{display:block;text-align:left;}.hiddenMobile{display:none !important;}hr{margin-top:0;margin-bottom:0;}.navBarParent{display:block;}.separator{margin-top:20px;margin-bottom:20px;}.navBarULRight{position:static;}.navBarUL{display:flex;align-items:center;margin:7.5px 0px;}.navBarUL li{height:37px;}.navBarUL li a{font-size:14px;padding:10px 15px;}.navBarDefault{display:block;height:auto;}.navBarToggle{margin-right:0;display:block;position:absolute;left:11px;top:15px;background:#fff;}.navBarHeader{display:flex;min-width:auto;padding-right:0;align-items:center;}.navBarBrand{font-size:20px;padding:0 0;padding-left:0;flex:initial;padding-right:15px;}.titleWrapper{padding:0 15px;display:block;}.gitBtn{display:inline-block;}.mobileView{text-align:left !important;padding-left:0 !important;}.searchWrapper{padding:0px 0;padding-top:0px;position:absolute;bottom:0px;width:calc(100% - 70px);position:absolute;left:40px;top:8px;}.hitWrapper{width:100%;right:0;top:35px;max-height:fit-content;position:static;}}@media (min-width:768px) and (max-width:991px){.navBarDefault{padding:10px;}.navBarBrand{font-size:22px;}.navBarHeader{min-width:240px;flex:initial;}.divider{margin:0 5px;height:20px;}.hitWrapper{max-width:500px;}.navBarUL li a{padding:10px 5px;}.searchWrapper{padding-left:0px;}}"}),Re=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a0)r.edges.map((function(e,r){var a;void 0!==e&&(e.node.fields.slug!==t.pathname&&H.a.gatsby.pathPrefix+e.node.fields.slug!==t.pathname||e.node.tableOfContents.items&&(a=e.node.tableOfContents.items.map((function(e,t){var n=e.title?e.title.replace(/\s+/g,"").toLowerCase():"#";return Object(S.d)(De,{key:t,to:"#"+n,level:1},e.title)})))),a&&(n=a)}));return n&&n.length?Object(S.d)(Me,null,Object(S.d)("ul",{className:"rightSideBarUL"},Object(S.d)("li",{className:"rightSideTitle"},"CONTENTS"),n)):Object(S.d)(Me,null,Object(S.d)("ul",null))}})};n("vg9a");var ke=Object(m.a)("div",{target:"edsd0s90"})("display:flex;justify-content:space-between;background:",(function(e){return e.theme.colors.background}),";.sideBarUL li a{color:",(function(e){return e.theme.colors.text}),";}.sideBarUL .item > a:hover{background-color:#2dc4f3;color:#fff !important;}@media only screen and (max-width:767px){display:block;}"),Le=Object(m.a)("main",{target:"edsd0s91"})("display:flex;flex-grow:1;margin:0px 88px;padding-top:3rem;background:",(function(e){return e.theme.colors.background}),";table tr{background:",(function(e){return e.theme.colors.background}),";}@media only screen and (max-width:1023px){padding-left:0;margin:0 10px;padding-top:3rem;}"),Fe=Object(m.a)("div",{target:"edsd0s92"})({name:"14zj307",styles:"@media only screen and (max-width:50rem){width:100%;position:relative;}"}),je=Object(m.a)("div",{target:"edsd0s93"})({name:"192n44p",styles:"width:298px;"}),Ne=Object(m.a)("div",{target:"edsd0s94"})({name:"gqp3x7",styles:"width:224px;"}),_e=function(e){var t=e.children,n=e.location;return Object(S.d)(Re,{location:n},Object(S.d)(we.MDXProvider,{components:P},Object(S.d)(ke,null,Object(S.d)(je,{className:"hiddenMobile"},Object(S.d)(de,{location:n})),H.a.sidebar.title?Object(S.d)("div",{className:"sidebarTitle sideBarShow",dangerouslySetInnerHTML:{__html:H.a.sidebar.title}}):null,Object(S.d)(Le,null,Object(S.d)(Fe,null,t)),Object(S.d)(Ne,{className:"hiddenMobile"},Object(S.d)(xe,{location:n})))))},Be=Object(m.a)("div",{target:"e1svfi2a0"})("margin:0px;padding:0px;width:auto;display:grid;grid-template-rows:auto;column-gap:24px;grid-template-columns:calc(50% - 8px) calc(50% - 8px);.previousBtn{cursor:pointer;-moz-box-align:center;-moz-box-direction:normal;-moz-box-orient:horizontal;margin:0px;padding:0px;position:relative;display:flex;flex-direction:row;align-items:center;place-self:stretch;border-radius:3px;border:1px solid rgb(230,236,241);transition:border 200ms ease 0s;box-shadow:rgba(116,129,141,0.1) 0px 3px 8px 0px;text-decoration:none;background-color:",(function(e){return e.theme.colors.background}),";color:",(function(e){return e.theme.colors.text}),";}.nextBtn{cursor:pointer;-moz-box-align:center;-moz-box-direction:normal;-moz-box-orient:horizontal;margin:0px;padding:0px;position:relative;display:flex;flex-direction:row;align-items:center;place-self:stretch;border-radius:3px;border:1px solid rgb(230,236,241);transition:border 200ms ease 0s;box-shadow:rgba(116,129,141,0.1) 0px 3px 8px 0px;text-decoration:none;background-color:",(function(e){return e.theme.colors.background}),";color:",(function(e){return e.theme.colors.text}),";}.nextBtn:hover,.previousBtn:hover{text-decoration:none;border:1px solid #2dc4f3;}.nextBtn:hover .rightArrow,.previousBtn:hover .leftArrow{color:#2dc4f3;}.leftArrow{display:block;margin:0px;color:rgb(157,170,182);flex:0 0 auto;font-size:24px;transition:color 200ms ease 0s;padding:16px;padding-right:16px;}.rightArrow{flex:0 0 auto;font-size:24px;transition:color 200ms ease 0s;padding:16px;padding-left:16px;display:block;margin:0px;color:rgb(157,170,182);}.nextPreviousTitle{display:block;margin:0px;padding:0px;transition:color 200ms ease 0s;}.nextPreviousTitle span{font-size:16px;line-height:1.5;font-weight:500;}@media (max-width:767px){display:block;padding:0 15px;.previousBtn{margin-bottom:20px;}}"),Ge=function(e){var t,n=e.mdx,r=e.nav,a=(r.map((function(e,r){e&&e.url===n.fields.slug&&(t=r)})),{}),i={};return void 0===t?(r[0]&&(a.url=r[0].url,a.title=r[0].title),i.url=null,i.title=null,t=-1):0===t?(a.url=r[t+1]?r[t+1].url:null,a.title=r[t+1]?r[t+1].title:null,i.url=null,i.title=null):t===r.length-1?(a.url=null,a.title=null,i.url=r[t-1]?r[t-1].url:null,i.title=r[t-1]?r[t-1].title:null):t&&(a.url=r[t+1].url,a.title=r[t+1].title,r[t-1]&&(i.url=r[t-1].url,i.title=r[t-1].title)),Object(S.d)(Be,null,i.url&&t>=0?Object(S.d)(U,{to:r[t-1].url,className:"previousBtn"},Object(S.d)("div",{className:"leftArrow"},Object(S.d)("svg",{preserveAspectRatio:"xMidYMid meet",height:"1em",width:"1em",fill:"none",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",stroke:"currentColor",className:"_13gjrqj"},Object(S.d)("g",null,Object(S.d)("line",{x1:"19",y1:"12",x2:"5",y2:"12"}),Object(S.d)("polyline",{points:"12 19 5 12 12 5"})))),Object(S.d)("div",{className:"preRightWrapper"},Object(S.d)("div",{className:"smallContent"},Object(S.d)("span",null,"Previous")),Object(S.d)("div",{className:"nextPreviousTitle"},Object(S.d)("span",null,r[t-1].title)))):null,a.url&&t>=0?Object(S.d)(U,{to:r[t+1].url,className:"nextBtn"},Object(S.d)("div",{className:"nextRightWrapper"},Object(S.d)("div",{className:"smallContent"},Object(S.d)("span",null,"Next")),Object(S.d)("div",{className:"nextPreviousTitle"},Object(S.d)("span",null,r[t+1]&&r[t+1].title))),Object(S.d)("div",{className:"rightArrow"},Object(S.d)("svg",{preserveAspectRatio:"xMidYMid meet",height:"1em",width:"1em",fill:"none",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",stroke:"currentColor",className:"_13gjrqj"},Object(S.d)("g",null,Object(S.d)("line",{x1:"5",y1:"12",x2:"19",y2:"12"}),Object(S.d)("polyline",{points:"12 5 19 12 12 19"}))))):null)};var Ue=Object(m.a)("h1",{target:"e17yakb10"})("font-size:32px;line-height:1.5;font-weight:500;border-left:2px solid #2dc4f3;padding:0 16px;flex:1;margin-top:0;padding-top:0;color:",(function(e){return e.theme.colors.heading}),";"),ze=Object(m.a)("div",{target:"e17yakb11"})({name:"qu2iew",styles:"padding:1rem 1.5rem;text-align:right;a{font-size:14px;font-weight:500;line-height:1em;text-decoration:none;color:#555;border:1px solid rgb(211,220,228);cursor:pointer;border-radius:3px;transition:all 0.2s ease-out 0s;text-decoration:none;color:rgb(36,42,49);background-color:rgb(255,255,255);box-shadow:rgba(116,129,141,0.1) 0px 1px 1px 0px;height:30px;padding:5px 16px;&:hover{background-color:rgb(245,247,249);}}"}),He=Object(m.a)("div",{target:"e17yakb12"})("max-width:750px;color:",(function(e){return e.theme.colors.text}),";ul,ol{-webkit-padding-start:40px;-moz-padding-start:40px;-o-padding-start:40px;margin:24px 0px;padding:0px 0px 0px 2em;li{font-size:16px;line-height:1.8;font-weight:400;}}a{transition:color 0.15s;color:",(function(e){return e.theme.colors.link}),";}code{border:1px solid #ede7f3;border-radius:4px;padding:2px 6px;font-size:0.9375em;background:",(function(e){return e.theme.colors.background}),";}@media (max-width:767px){padding:0 15px;}"),We=function(){var e=Object(o.useState)(!0),t=e[0],n=e[1],r=Object(o.useState)(0),a=r[0],i=r[1],s=function(){window.scrollY>a?n(!0):n(!1),i(window.scrollY)};Object(o.useEffect)((function(){return window.addEventListener("scroll",s),window.onscroll=function(){0===window.scrollY&&(n(!0),i(0))},function(){window.removeEventListener("scroll",s)}}));return Object(S.d)("button",{className:"mobileScrollUpButton "+(t?"":"fade"),onClick:function(){window.scroll(0,0)}},"Scroll to top")};function qe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Je(e){for(var t=1;te.length)return;if(!(v instanceof c)){if(g&&A!=t.length-1){if(p.lastIndex=S,!(I=p.exec(e)))break;for(var O=I.index+(m?I[1].length:0),C=I.index+I[0].length,E=A,T=S,P=t.length;E=(T+=t[E].length)&&(++A,S=T);if(t[A]instanceof c)continue;R=E-A,v=e.slice(S,T),I.index-=S}else{p.lastIndex=0;var I=p.exec(v),R=1}if(I){m&&(h=I[1]?I[1].length:0),C=(O=I.index+h)+(I=I[0].slice(h)).length;var w=v.slice(0,O),M=v.slice(C),D=[A,R];w&&(++A,S+=w.length,D.push(w));var x=new c(l,f?a.tokenize(I,f):I,y,I,g);if(D.push(x),M&&D.push(M),Array.prototype.splice.apply(t,D),1!=R&&a.matchGrammar(e,t,n,A,S,!0,l),o)break}else if(o)break}}}}},hooks:{add:function(){}},tokenize:function(e,t,n){var r=[e],i=t.rest;if(i){for(var o in i)t[o]=i[o];delete t.rest}return a.matchGrammar(e,r,t,0,0,!1),r}},(i=a.Token=function(e,t,n,r,a){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length,this.greedy=!!a}).stringify=function(e,t,n){if("string"==typeof e)return e;if("Array"===a.util.type(e))return e.map((function(n){return i.stringify(n,t,e)})).join("");var r={type:e.type,content:i.stringify(e.content,t,n),tag:"span",classes:["token",e.type],attributes:{},language:t,parent:n};if(e.alias){var o="Array"===a.util.type(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(r.classes,o)}var s=Object.keys(r.attributes).map((function(e){return e+'="'+(r.attributes[e]||"").replace(/"/g,""")+'"'})).join(" ");return"<"+r.tag+' class="'+r.classes.join(" ")+'"'+(s?" "+s:"")+">"+r.content+""},a);o.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},o.languages.markup.tag.inside["attr-value"].inside.entity=o.languages.markup.entity,o.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(o.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:o.languages[t]},n.cdata=/^$/i;var r={"included-cdata":{pattern://i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:o.languages[t]};var a={};a[e]={pattern:RegExp(/(<__[\s\S]*?>)(?:\s*|[\s\S])*?(?=<\/__>)/.source.replace(/__/g,e),"i"),lookbehind:!0,greedy:!0,inside:r},o.languages.insertBefore("markup","cdata",a)}}),o.languages.xml=o.languages.extend("markup",{}),o.languages.html=o.languages.markup,o.languages.mathml=o.languages.markup,o.languages.svg=o.languages.markup,function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--?|-=|\+\+?|\+=|!=?|~|\*\*?|\*=|\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\^=?|\|\|?|\|=|\?|:/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|x[0-9a-fA-F]{1,2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)\w+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b\w+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+?)\s*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:n},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0},{pattern:/(["'])(?:\\[\s\S]|\$\([^)]+\)|`[^`]+`|(?!\1)[^\\])*\1/,greedy:!0,inside:n}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:n.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|aptitude|apt-cache|apt-get|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:if|then|else|elif|fi|for|while|in|case|esac|function|select|do|done|until)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|break|cd|continue|eval|exec|exit|export|getopts|hash|pwd|readonly|return|shift|test|times|trap|umask|unset|alias|bind|builtin|caller|command|declare|echo|enable|help|let|local|logout|mapfile|printf|read|readarray|source|type|typeset|ulimit|unalias|set|shopt)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:true|false)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|==?|!=?|=~|<<[<-]?|[&\d]?>>|\d?[<>]&?|&[>&]?|\|[&|]?|<=?|>=?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}};for(var r=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],a=n.variable[1].inside,i=0;i=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/},o.languages.c=o.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),o.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete o.languages.c.boolean,o.languages.cpp=o.languages.extend("c",{"class-name":{pattern:/(\b(?:class|enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i,greedy:!0},operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:true|false)\b/}),o.languages.insertBefore("cpp","string",{"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),function(e){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/,inside:{rule:/@[\w-]+/}},url:{pattern:RegExp("url\\((?:"+t.source+"|[^\n\r()]*)\\)","i"),inside:{function:/^url/i,punctuation:/^\(|\)$/}},selector:RegExp("[^{}\\s](?:[^{};\"']|"+t.source+")*?(?=\\s*\\{)"),string:{pattern:t,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined("style","css"),e.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:n.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:e.languages.css}},alias:"language-css"}},n.tag))}(o),o.languages.css.selector={pattern:o.languages.css.selector,inside:{"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-:.\w]+/,id:/#[-:.\w]+/,attribute:{pattern:/\[(?:[^[\]"']|("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1)*\]/,greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)[-*\w\xA0-\uFFFF]*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},attribute:{pattern:/^(\s*)[-\w\xA0-\uFFFF]+/,lookbehind:!0},value:[/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,{pattern:/(=\s*)[-\w\xA0-\uFFFF]+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],punctuation:/[()]/}},o.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*/i,lookbehind:!0}}),o.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:/#[\da-f]{3,8}/i,entity:/\\[\da-f]{1,8}/i,unit:{pattern:/(\d)(?:%|[a-z]+)/,lookbehind:!0},number:/-?[\d.]+/}),o.languages.javascript=o.languages.extend("clike",{"class-name":[o.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),o.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,o.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:o.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:o.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:o.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:o.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),o.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\${|}$/,alias:"punctuation"},rest:o.languages.javascript}},string:/[\s\S]+/}}}),o.languages.markup&&o.languages.markup.tag.addInlined("script","javascript"),o.languages.js=o.languages.javascript,function(e){var t=e.util.clone(e.languages.javascript);e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=/<\/?(?:[\w.:-]+\s*(?:\s+(?:[\w.:-]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s{'">=]+|\{(?:\{(?:\{[^}]*\}|[^{}])*\}|[^{}])+\}))?|\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}))*\s*\/?)?>/i,e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/i,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">]+)/i,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.insertBefore("inside","attr-name",{spread:{pattern:/\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}/,inside:{punctuation:/\.{3}|[{}.]/,"attr-value":/\w+/}}},e.languages.jsx.tag),e.languages.insertBefore("inside","attr-value",{script:{pattern:/=(\{(?:\{(?:\{[^}]*\}|[^}])*\}|[^}])+\})/i,inside:{"script-punctuation":{pattern:/^=(?={)/,alias:"punctuation"},rest:e.languages.jsx},alias:"language-javascript"}},e.languages.jsx.tag);var n=function e(t){return t?"string"==typeof t?t:"string"==typeof t.content?t.content:t.content.map(e).join(""):""};e.hooks.add("after-tokenize",(function(t){"jsx"!==t.language&&"tsx"!==t.language||function t(r){for(var a=[],i=0;i0&&a[a.length-1].tagName===n(o.content[0].content[1])&&a.pop():"/>"===o.content[o.content.length-1].content||a.push({tagName:n(o.content[0].content[1]),openedBraces:0}):a.length>0&&"punctuation"===o.type&&"{"===o.content?a[a.length-1].openedBraces++:a.length>0&&a[a.length-1].openedBraces>0&&"punctuation"===o.type&&"}"===o.content?a[a.length-1].openedBraces--:s=!0),(s||"string"==typeof o)&&a.length>0&&0===a[a.length-1].openedBraces){var c=n(o);i0&&("string"==typeof r[i-1]||"plain-text"===r[i-1].type)&&(c=n(r[i-1])+c,r.splice(i-1,1),i--),r[i]=new e.Token("plain-text",c,null,c)}o.content&&"string"!=typeof o.content&&t(o.content)}}(t.tokens)}))}(o),function(e){var t=e.languages.javadoclike={parameter:{pattern:/(^\s*(?:\/{3}|\*|\/\*\*)\s*@(?:param|arg|arguments)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^\s*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};Object.defineProperty(t,"addSupport",{value:function(t,n){"string"==typeof t&&(t=[t]),t.forEach((function(t){!function(t,n){var r=e.languages[t];if(r){var a=r["doc-comment"];if(!a){var i={"doc-comment":{pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,alias:"comment"}};a=(r=e.languages.insertBefore(t,"comment",i))["doc-comment"]}if(a instanceof RegExp&&(a=r["doc-comment"]={pattern:a}),Array.isArray(a))for(var o=0,s=a.length;o>>?=?|->|([-+&|])\2|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0}}),e.languages.insertBefore("java","class-name",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0},namespace:{pattern:/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(\.[a-z]\w*)+/,lookbehind:!0,inside:{punctuation:/\./}},generics:{pattern:/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,inside:{"class-name":n,keyword:t,punctuation:/[<>(),.:]/,operator:/[?&|]/}}})}(o),function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,a,i){if(n.language===r){var o=n.tokenStack=[];n.code=n.code.replace(a,(function(e){if("function"==typeof i&&!i(e))return e;for(var a,s=o.length;-1!==n.code.indexOf(a=t(r,s));)++s;return o[s]=e,a})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var a=0,i=Object.keys(n.tokenStack);!function o(s){for(var c=0;c=i.length);c++){var l=s[c];if("string"==typeof l||l.content&&"string"==typeof l.content){var u=i[a],d=n.tokenStack[u],p="string"==typeof l?l:l.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++a;var g=p.substring(0,m),h=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),y=p.substring(m+f.length),b=[];g&&b.push.apply(b,o([g])),b.push(h),y&&b.push.apply(b,o([y])),"string"==typeof l?s.splice.apply(s,[c,1].concat(b)):l.content=b}}else l.content&&o(l.content)}return s}(n.tokens)}}}})}(o),function(e){e.languages.php=e.languages.extend("clike",{keyword:/\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|class|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|eval|exit|extends|final|finally|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|new|or|parent|print|private|protected|public|require|require_once|return|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i,boolean:{pattern:/\b(?:false|true)\b/i,alias:"constant"},constant:[/\b[A-Z_][A-Z0-9_]*\b/,/\b(?:null)\b/i],comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0}}),e.languages.insertBefore("php","string",{"shell-comment":{pattern:/(^|[^\\])#.*/,lookbehind:!0,alias:"comment"}}),e.languages.insertBefore("php","comment",{delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"}}),e.languages.insertBefore("php","keyword",{variable:/\$+(?:\w+\b|(?={))/i,package:{pattern:/(\\|namespace\s+|use\s+)[\w\\]+/,lookbehind:!0,inside:{punctuation:/\\/}}}),e.languages.insertBefore("php","operator",{property:{pattern:/(->)[\w]+/,lookbehind:!0}});var t={pattern:/{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/,lookbehind:!0,inside:{rest:e.languages.php}};e.languages.insertBefore("php","string",{"nowdoc-string":{pattern:/<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},"heredoc-string":{pattern:/<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:t}},"single-quoted-string":{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0,alias:"string"},"double-quoted-string":{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,alias:"string",inside:{interpolation:t}}}),delete e.languages.php.string,e.hooks.add("before-tokenize",(function(t){if(/<\?/.test(t.code)){e.languages["markup-templating"].buildPlaceholders(t,"php",/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#)(?:[^?\n\r]|\?(?!>))*|\/\*[\s\S]*?(?:\*\/|$))*?(?:\?>|$)/gi)}})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"php")}))}(o),function(e){var t=e.languages.javascript,n=/{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})+}/.source,r="(@(?:param|arg|argument|property)\\s+(?:"+n+"\\s+)?)";e.languages.jsdoc=e.languages.extend("javadoclike",{parameter:{pattern:RegExp(r+/[$\w\xA0-\uFFFF.]+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),e.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(r+/\[[$\w\xA0-\uFFFF.]+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:t,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp("(@[a-z]+\\s+)"+n),lookbehind:!0,inside:{punctuation:/[.,:?=<>|{}()[\]]/}},{pattern:/(@(?:augments|extends|class|interface|memberof!?|this)\s+)[A-Z]\w*(?:\.[A-Z]\w*)*/,lookbehind:!0,inside:{punctuation:/\./}}],example:{pattern:/(@example\s+)[^@]+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^(\s*(?:\*\s*)?).+$/m,lookbehind:!0,inside:t,alias:"language-javascript"}}}}),e.languages.javadoclike.addSupport("javascript",e.languages.jsdoc)}(o),o.languages.actionscript=o.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|else|extends|finally|for|function|if|implements|import|in|instanceof|interface|internal|is|native|new|null|package|private|protected|public|return|super|switch|this|throw|try|typeof|use|var|void|while|with|dynamic|each|final|get|include|namespace|native|override|set|static)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<>?>?|[!=]=?)=?|[~?@]/}),o.languages.actionscript["class-name"].alias="function",o.languages.markup&&o.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:{rest:o.languages.markup}}}),function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},rest:e.languages.javascript}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(o),function(e){e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:(?:Uint|Int)(?:8|16|32)|Uint8Clamped|Float(?:32|64))?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|(?:Weak)?(?:Set|Map)|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:/(\.\s*)#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*/,lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|location|navigator|performance|(?:local|session)Storage|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var t=["function","function-variable","method","method-variable","property-access"],n=0;n))/i,delete e.languages.flow.parameter,e.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(e.languages.flow.keyword)||(e.languages.flow.keyword=[e.languages.flow.keyword]),e.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:type|opaque|declare|Class)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:await|Diff|Exact|Keys|ObjMap|PropertyType|Shape|Record|Supertype|Subtype|Enum)\b(?!\$)/,lookbehind:!0})}(o),o.languages.n4js=o.languages.extend("javascript",{keyword:/\b(?:any|Array|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),o.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),o.languages.n4jsd=o.languages.n4js,o.languages.typescript=o.languages.extend("javascript",{keyword:/\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/}),o.languages.ts=o.languages.typescript,function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,a=r.inside["interpolation-punctuation"],i=r.pattern.source;function o(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function s(e,t){return"___"+t.toUpperCase()+"_"+e+"___"}function c(t,n,r){var a={code:t,grammar:n,language:r};return e.hooks.run("before-tokenize",a),a.tokens=e.tokenize(a.code,a.grammar),e.hooks.run("after-tokenize",a),a.tokens}function l(t){var n={};n["interpolation-punctuation"]=a;var i=e.tokenize(t,n);if(3===i.length){var o=[1,1];o.push.apply(o,c(i[1],e.languages.javascript,"javascript")),i.splice.apply(i,o)}return new e.Token("interpolation",i,r.alias,t)}function u(t,n,r){var a=e.tokenize(t,{interpolation:{pattern:RegExp(i),lookbehind:!0}}),o=0,u={},d=c(a.map((function(e){if("string"==typeof e)return e;for(var n,a=e.content;-1!==t.indexOf(n=s(o++,r)););return u[n]=a,n})).join(""),n,r),p=Object.keys(u);return o=0,function e(t){for(var n=0;n=p.length)return;var r=t[n];if("string"==typeof r||"string"==typeof r.content){var a=p[o],i="string"==typeof r?r:r.content,s=i.indexOf(a);if(-1!==s){++o;var c=i.substring(0,s),d=l(u[a]),f=i.substring(s+a.length),m=[];if(c&&m.push(c),m.push(d),f){var g=[f];e(g),m.push.apply(m,g)}"string"==typeof r?(t.splice.apply(t,[n,1].concat(m)),n+=m.length-1):r.content=m}}else{var h=r.content;Array.isArray(h)?e(h):e([h])}}}(d),new e.Token(r,d,"language-"+r,t)}e.languages.javascript["template-string"]=[o("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),o("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),o("svg",/\bsvg/.source),o("markdown",/\b(?:md|markdown)/.source),o("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),t].filter(Boolean);var d={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function p(e){return"string"==typeof e?e:Array.isArray(e)?e.map(p).join(""):p(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in d&&function t(n){for(var r=0,a=n.length;r/g,t),n&&(e=e+"|"+e.replace(/_/g,"\\*")),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``.+?``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,a=/\|?__(?:\|__)+\|?(?:(?:\r?\n|\r)|$)/.source.replace(/__/g,r),i=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\r?\n|\r)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+a+i+"(?:"+a+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+a+i+")(?:"+a+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+a+")"+i+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+a+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/(^[ \t]*(?:\r?\n|\r))(?: {4}|\t).+(?:(?:\r?\n|\r)(?: {4}|\t).+)*/m,lookbehind:!0,alias:"keyword"},{pattern:/``.+?``|`[^`\r\n]+`/,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\r?\n|\r))[\s\S]+?(?=(?:\r?\n|\r)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\r?\n|\r)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#+.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/__(?:(?!_)|_(?:(?!_))+_)+__/.source,!0),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/_(?:(?!_)|__(?:(?!_))+__)+_/.source,!0),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~))+?\2/.source,!1),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},url:{pattern:n(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)| ?\[(?:(?!\]))+\])/.source,!1),lookbehind:!0,greedy:!0,inside:{variable:{pattern:/(\[)[^\]]+(?=\]$)/,lookbehind:!0},content:{pattern:/(^!?\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},string:{pattern:/"(?:\\.|[^"\\])*"(?=\)$)/}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n",unchanged:" ",diff:"!"};Object.keys(t).forEach((function(n){var r=t[n],a=[];/^\w+$/.test(n)||a.push(/\w+/.exec(n)[0]),"diff"===n&&a.push("bold"),e.languages.diff[n]={pattern:RegExp("^(?:["+r+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:a}})),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})}(o),o.languages.git={comment:/^#.*/m,deleted:/^[-–].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/m,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/m}},coord:/^@@.*@@$/m,commit_sha1:/^commit \w{40}$/m},o.languages.go=o.languages.extend("clike",{keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,builtin:/\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\b/,boolean:/\b(?:_|iota|nil|true|false)\b/,operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,number:/(?:\b0x[a-f\d]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[-+]?\d+)?)i?/i,string:{pattern:/(["'`])(\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0}}),delete o.languages.go["class-name"],function(e){e.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/i,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,boolean:/\b(?:true|false)\b/,block:{pattern:/^(\s*~?\s*)[#\/]\S+?(?=\s*~?\s*$|\s)/i,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~\s]+/},e.hooks.add("before-tokenize",(function(t){e.languages["markup-templating"].buildPlaceholders(t,"handlebars",/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g)})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"handlebars")}))}(o),o.languages.json={property:{pattern:/"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,greedy:!0},string:{pattern:/"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,greedy:!0},comment:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,number:/-?\d+\.?\d*(e[+-]?\d+)?/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:true|false)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},o.languages.less=o.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-]+?(?:\([^{}]+\)|[^(){};])*?(?=\s*\{)/i,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\([^{}]*\)|[^{};@])*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/i,operator:/[+\-*\/]/}),o.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-]+.*?(?=[(;])/,lookbehind:!0,alias:"function"}}),o.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},builtin:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,symbol:{pattern:/^[^:=\r\n]+(?=\s*:(?!=))/m,inside:{variable:/\$+(?:[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:[/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,{pattern:/(\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \t])/,lookbehind:!0}],operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},o.languages.objectivec=o.languages.extend("c",{keyword:/\b(?:asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while|in|self|super)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,string:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|@"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete o.languages.objectivec["class-name"],o.languages.ocaml={comment:/\(\*[\s\S]*?\*\)/,string:[{pattern:/"(?:\\.|[^\\\r\n"])*"/,greedy:!0},{pattern:/(['`])(?:\\(?:\d+|x[\da-f]+|.)|(?!\1)[^\\\r\n])\1/i,greedy:!0}],number:/\b(?:0x[\da-f][\da-f_]+|(?:0[bo])?\d[\d_]*\.?[\d_]*(?:e[+-]?[\d_]+)?)/i,type:{pattern:/\B['`]\w*/,alias:"variable"},directive:{pattern:/\B#\w+/,alias:"function"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|object|of|open|prefix|private|rec|then|sig|struct|to|try|type|val|value|virtual|where|while|with)\b/,boolean:/\b(?:false|true)\b/,operator:/:=|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lxor|lsl|lsr|mod|nor|or)\b/,punctuation:/[(){}\[\]|_.,:;]/},o.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},"string-interpolation":{pattern:/(?:f|rf|fr)(?:("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:{{)*){(?!{)(?:[^{}]|{(?!{)(?:[^{}]|{(?!{)(?:[^{}])+})+})+}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|rb|br)?("""|''')[\s\S]+?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|rb|br)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^\s*)@\w+(?:\.\w+)*/i,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:True|False|None)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},o.languages.python["string-interpolation"].inside.interpolation.inside.rest=o.languages.python,o.languages.py=o.languages.python,o.languages.reason=o.languages.extend("clike",{comment:{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:mod|land|lor|lxor|lsl|lsr|asr)\b/}),o.languages.insertBefore("reason","class-name",{character:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,alias:"string"},constructor:{pattern:/\b[A-Z]\w*\b(?!\s*\.)/,alias:"variable"},label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete o.languages.reason.function,function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t]+.+)*/m,lookbehind:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,inside:{atrule:/(?:@[\w-]+|[+=])/m}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|or|not)\b/,{pattern:/(\s+)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s]+.*)/m,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore("sass","punctuation",{selector:{pattern:/([ \t]*)\S(?:,?[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,?[^,\r\n]+)*)*/,lookbehind:!0}})}(o),o.languages.scss=o.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-]+(?:\([^()]+\)|[^(])*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()]|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}]+[:{][^}]+))/m,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[\w-]|\$[-\w]+|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),o.languages.insertBefore("scss","atrule",{keyword:[/@(?:if|else(?: if)?|for|each|while|import|extend|debug|warn|mixin|include|function|return|content)/i,{pattern:/( +)(?:from|through)(?= )/,lookbehind:!0}]}),o.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),o.languages.insertBefore("scss","function",{placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:true|false)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|or|not)(?=\s)/,lookbehind:!0}}),o.languages.scss.atrule.inside.rest=o.languages.scss,o.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURNS?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:TRUE|FALSE|NULL)\b/i,number:/\b0x[\da-f]+\b|\b\d+\.?\d*|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t={url:/url\((["']?).*?\1\)/i,string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:if|else|for|return|unless)(?=\s+|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,number:/\b\d+(?:\.\d+)?%?/,boolean:/\b(?:true|false)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.+|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],punctuation:/[{}()\[\];:,]/};t.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^{|}$/,alias:"punctuation"},rest:t}},t.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:t}},e.languages.stylus={comment:{pattern:/(^|[^\\])(\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},"atrule-declaration":{pattern:/(^\s*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:t}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:(?:\{[^}]*\}|.+)|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:t}},statement:{pattern:/(^[ \t]*)(?:if|else|for|return|unless)[ \t]+.+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:t}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)[^{\r\n]*(?:;|[^{\r\n,](?=$)(?!(\r?\n|\r)(?:\{|\2[ \t]+)))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:t.interpolation}},rest:t}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t]+)))/m,lookbehind:!0,inside:{interpolation:t.interpolation,punctuation:/[{},]/}},func:t.func,string:t.string,interpolation:t.interpolation,punctuation:/[{}()\[\];:.]/}}(o);var s=o.util.clone(o.languages.typescript);o.languages.tsx=o.languages.extend("jsx",s),o.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-./:<=>?@\\^_`|~]+/i,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/},o.languages.yaml={scalar:{pattern:/([\-:]\s*(?:![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\2[^\r\n]+)*)/,lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:/(\s*(?:^|[:\-,[{\r\n?])[ \t]*(?:![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/,lookbehind:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?)?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?)(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,alias:"number"},boolean:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:true|false)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},null:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:null|~)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},string:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)("|')(?:(?!\2)[^\\\r\n]|\\.)*\2(?=[ \t]*(?:$|,|]|}|\s*#))/m,lookbehind:!0,greedy:!0},number:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+\.?\d*|\.?\d+)(?:e[+-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im,lookbehind:!0},tag:/![^\s]+/,important:/[&*][\w]+/,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},o.languages.yml=o.languages.yaml,t.a=o},SksO:function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},n(t,r)}e.exports=n},TJpk:function(e,t,n){t.__esModule=!0,t.Helmet=void 0;var r=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function f(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function m(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}var g,h,y,b=(0,s.default)(l.reducePropsToState,l.handleClientStateChange,l.mapStateOnServer)((function(){return null})),A=(g=b,y=h=function(e){function t(){return f(this,t),m(this,e.apply(this,arguments))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t.prototype.shouldComponentUpdate=function(e){return!(0,c.default)(this.props,e)},t.prototype.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case u.TAG_NAMES.SCRIPT:case u.TAG_NAMES.NOSCRIPT:return{innerHTML:t};case u.TAG_NAMES.STYLE:return{cssText:t}}throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")},t.prototype.flattenArrayTypeChildren=function(e){var t,n=e.child,a=e.arrayTypeChildren,i=e.newChildProps,o=e.nestedChildren;return r({},a,((t={})[n.type]=[].concat(a[n.type]||[],[r({},i,this.mapNestedChildrenToProps(n,o))]),t))},t.prototype.mapObjectTypeChildren=function(e){var t,n,a=e.child,i=e.newProps,o=e.newChildProps,s=e.nestedChildren;switch(a.type){case u.TAG_NAMES.TITLE:return r({},i,((t={})[a.type]=s,t.titleAttributes=r({},o),t));case u.TAG_NAMES.BODY:return r({},i,{bodyAttributes:r({},o)});case u.TAG_NAMES.HTML:return r({},i,{htmlAttributes:r({},o)})}return r({},i,((n={})[a.type]=r({},o),n))},t.prototype.mapArrayTypeChildrenToProps=function(e,t){var n=r({},t);return Object.keys(e).forEach((function(t){var a;n=r({},n,((a={})[t]=e[t],a))})),n},t.prototype.warnOnInvalidChildren=function(e,t){return!0},t.prototype.mapChildrenToProps=function(e,t){var n=this,r={};return i.default.Children.forEach(e,(function(e){if(e&&e.props){var a=e.props,i=a.children,o=p(a,["children"]),s=(0,l.convertReactPropstoHtmlAttributes)(o);switch(n.warnOnInvalidChildren(e,i),e.type){case u.TAG_NAMES.LINK:case u.TAG_NAMES.META:case u.TAG_NAMES.NOSCRIPT:case u.TAG_NAMES.SCRIPT:case u.TAG_NAMES.STYLE:r=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:r,newChildProps:s,nestedChildren:i});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:s,nestedChildren:i})}}})),t=this.mapArrayTypeChildrenToProps(r,t)},t.prototype.render=function(){var e=this.props,t=e.children,n=p(e,["children"]),a=r({},n);return t&&(a=this.mapChildrenToProps(t,a)),i.default.createElement(g,a)},a(t,null,[{key:"canUseDOM",set:function(e){g.canUseDOM=e}}]),t}(i.default.Component),h.propTypes={base:o.default.object,bodyAttributes:o.default.object,children:o.default.oneOfType([o.default.arrayOf(o.default.node),o.default.node]),defaultTitle:o.default.string,defer:o.default.bool,encodeSpecialCharacters:o.default.bool,htmlAttributes:o.default.object,link:o.default.arrayOf(o.default.object),meta:o.default.arrayOf(o.default.object),noscript:o.default.arrayOf(o.default.object),onChangeClientState:o.default.func,script:o.default.arrayOf(o.default.object),style:o.default.arrayOf(o.default.object),title:o.default.string,titleAttributes:o.default.object,titleTemplate:o.default.string},h.defaultProps={defer:!0,encodeSpecialCharacters:!0},h.peek=g.peek,h.rewind=function(){var e=g.rewind();return e||(e=(0,l.mapStateOnServer)({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}})),e},y);A.renderStatic=A.rewind,t.Helmet=A,t.default=A},TOwV:function(e,t,n){"use strict";e.exports=n("qT12")},TqRt:function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}}},TqVZ:function(e,t,n){"use strict";var r=n("z9I/");var a=function(e){function t(e,t,r){var a=t.trim().split(m);t=a;var i=a.length,o=e.length;switch(o){case 0:case 1:var s=0;for(e=0===o?"":e[0]+" ";sr&&(r=(t=t.trim()).charCodeAt(0)),r){case 38:return t.replace(g,"$1"+e.trim());case 58:return e.trim()+t.replace(g,"$1"+e.trim());default:if(0<1*n&&0c.charCodeAt(8))break;case 115:o=o.replace(c,"-webkit-"+c)+";"+o;break;case 207:case 102:o=o.replace(c,"-webkit-"+(102s.charCodeAt(0)&&(s=s.trim()),s=[s],0f)&&(B=(z=z.replace(" ",":")).length),00)return s[s.length-1];if(e&&e.location.pathname===a)return o?decodeURI(o.slice(1)):[0,0];return!0}var R=function(e){function t(t){var n;return(n=e.call(this,t)||this).announcementRef=s.a.createRef(),n}Object(a.a)(t,e);var n=t.prototype;return n.componentDidUpdate=function(e,t){var n=this;requestAnimationFrame((function(){var e="new page at "+n.props.location.pathname;document.title&&(e=document.title);var t=document.querySelectorAll("#gatsby-focus-wrapper h1");t&&t.length&&(e=t[0].textContent);var r="Navigated to "+e;n.announcementRef.current&&(n.announcementRef.current.innerText!==r&&(n.announcementRef.current.innerText=r))}))},n.render=function(){return Object(v.d)("div",Object(r.a)({},b,{ref:this.announcementRef}))},t}(s.a.Component),w=function(e,t){var n,r;return e.href!==t.href||(null==e||null===(n=e.state)||void 0===n?void 0:n.key)!==(null==t||null===(r=t.state)||void 0===r?void 0:r.key)},M=function(e){function t(t){var n;return n=e.call(this,t)||this,E(t.location,null),n}Object(a.a)(t,e);var n=t.prototype;return n.componentDidMount=function(){T(this.props.location,null)},n.shouldComponentUpdate=function(e){return!!w(e.location,this.props.location)&&(E(this.props.location,e.location),!0)},n.componentDidUpdate=function(e){w(e.location,this.props.location)&&T(this.props.location,e.location)},n.render=function(){return Object(v.d)(s.a.Fragment,null,this.props.children,Object(v.d)(R,{location:location}))},t}(s.a.Component),D=n("IOVJ"),x=n("NsGk"),k=n.n(x),L=n("rePB");function F(e,t){for(var n in e)if(!(n in t))return!0;for(var r in t)if(e[r]!==t[r])return!0;return!1}function j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function N(e){for(var t=1;t0&&n("NSX3");var e=function(e){return Object(v.d)(u.BaseContext.Provider,{value:{baseuri:"/",basepath:"/"}},Object(v.d)(D.a,e))},t=s.a.createContext({}),o=function(e){function n(){return e.apply(this,arguments)||this}return Object(a.a)(n,e),n.prototype.render=function(){var e=this.props.children;return Object(v.d)(u.Location,null,(function(n){var r=n.location;return Object(v.d)(_,{location:r},(function(n){var r=n.pageResources,a=n.location,i=Object(g.getStaticQueryResults)();return Object(v.d)(m.StaticQueryContext.Provider,{value:i},Object(v.d)(t.Provider,{value:{pageResources:r,location:a}},e))}))}))},n}(s.a.Component),c=function(n){function i(){return n.apply(this,arguments)||this}return Object(a.a)(i,n),i.prototype.render=function(){var n=this;return Object(v.d)(t.Consumer,null,(function(t){var a=t.pageResources,i=t.location;return Object(v.d)(M,{location:i},Object(v.d)(d.ScrollContext,{location:i,shouldUpdateScroll:I},Object(v.d)(u.Router,{basepath:"",location:i,id:"gatsby-focus-wrapper"},Object(v.d)(e,Object(r.a)({path:"/404.html"===a.page.path?Object(B.a)(i.pathname,""):encodeURI(a.page.matchPath||a.page.path)},n.props,{location:i,pageResources:a},a.json)))))}))},i}(s.a.Component),p=window,h=p.pagePath,y=p.location;h&&""+h!==y.pathname&&!(U.findMatchPath(Object(B.a)(y.pathname,""))||"/404.html"===h||h.match(/^\/404\/?$/)||h.match(/^\/offline-plugin-app-shell-fallback\/?$/))&&Object(u.navigate)(""+h+y.search+y.hash,{replace:!0}),g.publicLoader.loadPage(y.pathname).then((function(e){if(!e||e.status===g.PageResourceStatus.Error)throw new Error("page resources for "+y.pathname+" not found. Not rendering React");window.___webpackCompilationHash=e.page.webpackCompilationHash;var t=Object(i.apiRunner)("wrapRootElement",{element:Object(v.d)(c,null)},Object(v.d)(c,null),(function(e){return{element:e.result}})).pop(),n=function(){return Object(v.d)(o,null,t)},r=Object(i.apiRunner)("replaceHydrateFunction",void 0,l.a.hydrate)[0];f()((function(){r(Object(v.d)(n,null),"undefined"!=typeof window?document.getElementById("___gatsby"):void 0,(function(){Object(i.apiRunner)("onInitialClientRender")}))}))}))}))},VX4j:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAApgAAAKYB3X3/OAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAANGSURBVEiJndVPbNRVEAfwz9vd/q8tBQtoxSYYDKYmejMGD3DxYloMiRoT22IEDQcPno3xoFclMf6JHrDFyIVEI3g2eiDoRWOMfygqNrSkoeAWCtIu230e3m+77e6KCZO8vH3zZuY7M+/7mxVjVFu7C+vPt7mmh4fi+eEDMUYFVZkdeZU7dhgIzxOj25ULe3fJx6PYamZkDYD4rRDmmgafDIdE3aIJbcrKxkQF4/GtBtuY/43KGVBxOsT/S3YijAomEVBCBe0geNlYfLfBZ3bfJmFlp7u/ONUcYCIMCw6jL1vhFikUURS9Zn88Vn9ZaOJA8DTuA3n0Zjm3ZlDL2VrASpZE8CwaABormAgPC75Cny7cmYE0kwou4Rq4IWeP0fhdc4DjIe+GD0QvIKcbmzOrtl56t9O2gRBYvsKVcyz9ne7nsQgiPhUdtD8uNVYwGRbQK497qu3ZzsYHUuB1EimepTiVKplBGZQM6rI7liFX5/Ur0rPmpYw3ZcEL7fRso3eQQgcCfffT0Z+i9K3GOFMNvh7gWOjDYGpJpuvbkQK1dND/IF1b6Oynf4jW7jU2a3zY6uPQ3whw0/u4S5DYIqsAOjdrkKqutSfbVcncL+ejOoAQsC39VGN9yOiTa8LmXIGOx8h11RxqzzTgeHLOAGKUM4pFFdzMzJYX0n79YiPAP/O0PUSlHTE9cCXdCJ7zVFxZA4DReA4/gKVMd/WvtJcWKf6e6FlapPgHS0UW3uPyN9b58IuxOFU91Ne+E+kL7cb1Oa5O0zPI0kJaa+XaLIszif21q4x2if+1ClLP/iRrUfYNufQTF79P2ceY2lFaZP5HLqaCFaUxmOSsT3RWD42j4mh4RnQEnTZYP+pCLh1Se2uZF0FZdNC0o16Plf8GgMnwOZ5Eot9GiefVmbQiDbtitif52njcUx+q+TSNTgoZQAlzddblJj7ByWah0htc2LvL7L5Nq9r98YhBLSo2481Vfbkh+DtytljWaiy+3QwgxOnhIfl4AmdoGTXw2eUGq8lwWNCDD1WUBC+hYNyLTf9iZ554RAiPG/jyjYKcR7E1wa3sxKkGh/H4Sp3mULNsVyVvTgxTqYIYmRk5oOK0e0/8fEvH25B/AZyRWA6LDlu9AAAAAElFTkSuQmCC"},VbXa:function(e,t){e.exports=function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}},Wbzz:function(e,t,n){"use strict";n.r(t),n.d(t,"graphql",(function(){return y})),n.d(t,"StaticQueryContext",(function(){return f})),n.d(t,"StaticQuery",(function(){return g})),n.d(t,"useStaticQuery",(function(){return h})),n.d(t,"prefetchPathname",(function(){return p}));var r=n("q1tI"),a=n.n(r),i=n("+ZDr"),o=n.n(i);n.d(t,"Link",(function(){return o.a})),n.d(t,"withAssetPrefix",(function(){return i.withAssetPrefix})),n.d(t,"withPrefix",(function(){return i.withPrefix})),n.d(t,"parsePath",(function(){return i.parsePath})),n.d(t,"navigate",(function(){return i.navigate})),n.d(t,"push",(function(){return i.push})),n.d(t,"replace",(function(){return i.replace})),n.d(t,"navigateTo",(function(){return i.navigateTo}));var s=n("7hJ6");n.d(t,"useScrollRestoration",(function(){return s.useScrollRestoration}));var c=n("lw3w"),l=n.n(c);n.d(t,"PageRenderer",(function(){return l.a}));var u=n("emEt"),d=n("qKvR"),p=u.default.enqueue,f=a.a.createContext({});function m(e){var t=e.staticQueryData,n=e.data,r=e.query,i=e.render,o=n?n.data:t[r]&&t[r].data;return Object(d.d)(a.a.Fragment,null,o&&i(o),!o&&Object(d.d)("div",null,"Loading (StaticQuery)"))}var g=function(e){var t=e.data,n=e.query,r=e.render,a=e.children;return Object(d.d)(f.Consumer,null,(function(e){return Object(d.d)(m,{data:t,query:n,render:r||a,staticQueryData:e})}))},h=function(e){var t;a.a.useContext;var n=a.a.useContext(f);if(isNaN(Number(e)))throw new Error("useStaticQuery was called with a string but expects to be called using `graphql`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql`"+e+"`);\n");if(null===(t=n[e])||void 0===t?void 0:t.data)return n[e].data;throw new Error("The result of this StaticQuery could not be fetched.\n\nThis is likely a bug in Gatsby and if refreshing the page does not fix it, please open an issue in https://github.com/gatsbyjs/gatsby/issues")};function y(){throw new Error("It appears like Gatsby is misconfigured. Gatsby related `graphql` calls are supposed to only be evaluated at compile time, and then compiled away. Unfortunately, something went wrong and the query was left in the compiled code.\n\nUnless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.")}},WkPL:function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function g(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function h(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var y=function(e,t){var n=c()(t);return n.displayName=e,n},b=y("Location"),A=function(e){var t=e.children;return a.a.createElement(b.Consumer,null,(function(e){return e?t(e):a.a.createElement(S,null,t)}))},S=function(e){function t(){var n,r;m(this,t);for(var a=arguments.length,i=Array(a),o=0;o-1?(i=t.substring(0,r),o=t.substring(r)):i=t,a.a.createElement(b.Provider,{value:{location:{pathname:i,search:o,hash:""},navigate:function(){throw new Error("You can't call navigate on the server.")}}},n)},O=y("Base",{baseuri:"/",basepath:"/"}),C=function(e){return a.a.createElement(O.Consumer,null,(function(t){return a.a.createElement(A,null,(function(n){return a.a.createElement(E,p({},t,n,e))}))}))},E=function(e){function t(){return m(this,t),g(this,e.apply(this,arguments))}return h(t,e),t.prototype.render=function(){var e=this.props,t=e.location,n=e.navigate,r=e.basepath,i=e.primary,o=e.children,s=(e.baseuri,e.component),c=void 0===s?"div":s,l=f(e,["location","navigate","basepath","primary","children","baseuri","component"]),d=a.a.Children.toArray(o).reduce((function(e,t){var n=W(r)(t);return e.concat(n)}),[]),m=t.pathname,g=Object(u.pick)(d,m);if(g){var h=g.params,y=g.uri,b=g.route,A=g.route.value;r=b.default?r:b.path.replace(/\*$/,"");var S=p({},h,{uri:y,location:t,navigate:function(e,t){return n(Object(u.resolve)(e,y),t)}}),v=a.a.cloneElement(A,S,A.props.children?a.a.createElement(C,{location:t,primary:i},A.props.children):void 0),E=i?P:c,T=i?p({uri:y,location:t,component:c},l):l;return a.a.createElement(O.Provider,{value:{baseuri:y,basepath:r}},a.a.createElement(E,T,v))}return null},t}(a.a.PureComponent);E.defaultProps={primary:!0};var T=y("Focus"),P=function(e){var t=e.uri,n=e.location,r=e.component,i=f(e,["uri","location","component"]);return a.a.createElement(T.Consumer,null,(function(e){return a.a.createElement(w,p({},i,{component:r,requestFocus:e,uri:t,location:n}))}))},I=!0,R=0,w=function(e){function t(){var n,r;m(this,t);for(var a=arguments.length,i=Array(a),o=0;oe.length)&&(t=e.length);for(var n=0,r=new Array(t);nAFOTEC OT&E Guide",githubUrl:"",helpUrl:"",tweetText:"",links:[{text:"",link:""}],search:{enabled:!0,indexName:"prod_guide",algoliaAppId:"8WYYTT6SZL",algoliaSearchKey:"cbce654033659a526bb5fcd00086ebcc",algoliaAdminKey:{}.ALGOLIA_ADMIN_KEY}},sidebar:{forcedNavOrder:["/OT&E_Guide","/fn_guides","/glossary"],collapsedNav:["/OT&E_Guide"],links:[{text:"AFOTEC",link:"https://www.afotec.af.mil"},{text:"OT&E Job Aides",link:"https://usaf.dps.mil/sites/AFOTEC-PRIVATE/mainlibrary/JobAidsandGuides/Forms/AllItems.aspx?viewpath=/sites/AFOTEC-PRIVATE/mainlibrary/JobAidsandGuides/Forms/AllItems.aspx"}],frontline:!1,ignoreIndex:!0,title:""},siteMetadata:{title:"AFOTEC OT&E Guide",description:"Air Force Operational Test and Evaluation Guide",ogImage:null,docsLocation:"",favicon:"https://raw.githubusercontent.com/Travis42/misc/main/favicon.ico"},pwa:{enabled:!1,manifest:{name:"AFOTEC OT&E Guide",short_name:"OT&E Guide",start_url:"/",background_color:"#6b37bf",theme_color:"#6b37bf",display:"standalone",crossOrigin:"use-credentials",icons:[{src:"src/pwa-512.png",sizes:"512x512",type:"image/png"}]}}};e.exports=n},oxjq:function(e,t,n){"use strict";var r=/[|\\{}()[\]^$+*?.]/g;e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(r,"\\$&")}},pVnL:function(e,t){function n(){return e.exports=n=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1])||arguments[1];return!1===t?String(e):String(e).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")},d=function(e){var t=h(e,s.TAG_NAMES.TITLE),n=h(e,s.HELMET_PROPS.TITLE_TEMPLATE);if(n&&t)return n.replace(/%s/g,(function(){return t}));var r=h(e,s.HELMET_PROPS.DEFAULT_TITLE);return t||r||void 0},p=function(e){return h(e,s.HELMET_PROPS.ON_CHANGE_CLIENT_STATE)||function(){}},f=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return a({},e,t)}),{})},m=function(e,t){return t.filter((function(e){return void 0!==e[s.TAG_NAMES.BASE]})).map((function(e){return e[s.TAG_NAMES.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),a=0;a=0;n--){var r=e[n];if(r.hasOwnProperty(t))return r[t]}return null},y=(l=Date.now(),function(e){var t=Date.now();t-l>16?(l=t,e(t)):setTimeout((function(){y(e)}),0)}),b=function(e){return clearTimeout(e)},A="undefined"!=typeof window?window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||y:e.requestAnimationFrame||y,S="undefined"!=typeof window?window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||b:e.cancelAnimationFrame||b,v=function(e){return console&&"function"==typeof console.warn&&console.warn(e)},O=null,C=function(e,t){var n=e.baseTag,r=e.bodyAttributes,a=e.htmlAttributes,i=e.linkTags,o=e.metaTags,c=e.noscriptTags,l=e.onChangeClientState,u=e.scriptTags,d=e.styleTags,p=e.title,f=e.titleAttributes;P(s.TAG_NAMES.BODY,r),P(s.TAG_NAMES.HTML,a),T(p,f);var m={baseTag:I(s.TAG_NAMES.BASE,n),linkTags:I(s.TAG_NAMES.LINK,i),metaTags:I(s.TAG_NAMES.META,o),noscriptTags:I(s.TAG_NAMES.NOSCRIPT,c),scriptTags:I(s.TAG_NAMES.SCRIPT,u),styleTags:I(s.TAG_NAMES.STYLE,d)},g={},h={};Object.keys(m).forEach((function(e){var t=m[e],n=t.newTags,r=t.oldTags;n.length&&(g[e]=n),r.length&&(h[e]=m[e].oldTags)})),t&&t(),l(e,g,h)},E=function(e){return Array.isArray(e)?e.join(""):e},T=function(e,t){void 0!==e&&document.title!==e&&(document.title=E(e)),P(s.TAG_NAMES.TITLE,t)},P=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute(s.HELMET_ATTRIBUTE),a=r?r.split(","):[],i=[].concat(a),o=Object.keys(t),c=0;c=0;p--)n.removeAttribute(i[p]);a.length===i.length?n.removeAttribute(s.HELMET_ATTRIBUTE):n.getAttribute(s.HELMET_ATTRIBUTE)!==o.join(",")&&n.setAttribute(s.HELMET_ATTRIBUTE,o.join(","))}},I=function(e,t){var n=document.head||document.querySelector(s.TAG_NAMES.HEAD),r=n.querySelectorAll(e+"["+s.HELMET_ATTRIBUTE+"]"),a=Array.prototype.slice.call(r),i=[],o=void 0;return t&&t.length&&t.forEach((function(t){var n=document.createElement(e);for(var r in t)if(t.hasOwnProperty(r))if(r===s.TAG_PROPERTIES.INNER_HTML)n.innerHTML=t.innerHTML;else if(r===s.TAG_PROPERTIES.CSS_TEXT)n.styleSheet?n.styleSheet.cssText=t.cssText:n.appendChild(document.createTextNode(t.cssText));else{var c=void 0===t[r]?"":t[r];n.setAttribute(r,c)}n.setAttribute(s.HELMET_ATTRIBUTE,"true"),a.some((function(e,t){return o=t,n.isEqualNode(e)}))?a.splice(o,1):i.push(n)})),a.forEach((function(e){return e.parentNode.removeChild(e)})),i.forEach((function(e){return n.appendChild(e)})),{oldTags:a,newTags:i}},R=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},w=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).reduce((function(t,n){return t[s.REACT_TAG_MAP[n]||n]=e[n],t}),t)},M=function(e,t,n){switch(e){case s.TAG_NAMES.TITLE:return{toComponent:function(){return e=t.title,n=t.titleAttributes,(r={key:e})[s.HELMET_ATTRIBUTE]=!0,a=w(n,r),[i.default.createElement(s.TAG_NAMES.TITLE,a,e)];var e,n,r,a},toString:function(){return function(e,t,n,r){var a=R(n),i=E(t);return a?"<"+e+" "+s.HELMET_ATTRIBUTE+'="true" '+a+">"+u(i,r)+"":"<"+e+" "+s.HELMET_ATTRIBUTE+'="true">'+u(i,r)+""}(e,t.title,t.titleAttributes,n)}};case s.ATTRIBUTE_NAMES.BODY:case s.ATTRIBUTE_NAMES.HTML:return{toComponent:function(){return w(t)},toString:function(){return R(t)}};default:return{toComponent:function(){return function(e,t){return t.map((function(t,n){var r,a=((r={key:n})[s.HELMET_ATTRIBUTE]=!0,r);return Object.keys(t).forEach((function(e){var n=s.REACT_TAG_MAP[e]||e;if(n===s.TAG_PROPERTIES.INNER_HTML||n===s.TAG_PROPERTIES.CSS_TEXT){var r=t.innerHTML||t.cssText;a.dangerouslySetInnerHTML={__html:r}}else a[n]=t[e]})),i.default.createElement(e,a)}))}(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var a=Object.keys(r).filter((function(e){return!(e===s.TAG_PROPERTIES.INNER_HTML||e===s.TAG_PROPERTIES.CSS_TEXT)})).reduce((function(e,t){var a=void 0===r[t]?t:t+'="'+u(r[t],n)+'"';return e?e+" "+a:a}),""),i=r.innerHTML||r.cssText||"",o=-1===s.SELF_CLOSING_TAGS.indexOf(e);return t+"<"+e+" "+s.HELMET_ATTRIBUTE+'="true" '+a+(o?"/>":">"+i+"")}),"")}(e,t,n)}}}};t.convertReactPropstoHtmlAttributes=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).reduce((function(t,n){return t[s.HTML_TAG_MAP[n]||n]=e[n],t}),t)},t.handleClientStateChange=function(e){O&&S(O),e.defer?O=A((function(){C(e,(function(){O=null}))})):(C(e),O=null)},t.mapStateOnServer=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,a=e.htmlAttributes,i=e.linkTags,o=e.metaTags,c=e.noscriptTags,l=e.scriptTags,u=e.styleTags,d=e.title,p=void 0===d?"":d,f=e.titleAttributes;return{base:M(s.TAG_NAMES.BASE,t,r),bodyAttributes:M(s.ATTRIBUTE_NAMES.BODY,n,r),htmlAttributes:M(s.ATTRIBUTE_NAMES.HTML,a,r),link:M(s.TAG_NAMES.LINK,i,r),meta:M(s.TAG_NAMES.META,o,r),noscript:M(s.TAG_NAMES.NOSCRIPT,c,r),script:M(s.TAG_NAMES.SCRIPT,l,r),style:M(s.TAG_NAMES.STYLE,u,r),title:M(s.TAG_NAMES.TITLE,{title:p,titleAttributes:f},r)}},t.reducePropsToState=function(e){return{baseTag:m([s.TAG_PROPERTIES.HREF],e),bodyAttributes:f(s.ATTRIBUTE_NAMES.BODY,e),defer:h(e,s.HELMET_PROPS.DEFER),encode:h(e,s.HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:f(s.ATTRIBUTE_NAMES.HTML,e),linkTags:g(s.TAG_NAMES.LINK,[s.TAG_PROPERTIES.REL,s.TAG_PROPERTIES.HREF],e),metaTags:g(s.TAG_NAMES.META,[s.TAG_PROPERTIES.NAME,s.TAG_PROPERTIES.CHARSET,s.TAG_PROPERTIES.HTTPEQUIV,s.TAG_PROPERTIES.PROPERTY,s.TAG_PROPERTIES.ITEM_PROP],e),noscriptTags:g(s.TAG_NAMES.NOSCRIPT,[s.TAG_PROPERTIES.INNER_HTML],e),onChangeClientState:p(e),scriptTags:g(s.TAG_NAMES.SCRIPT,[s.TAG_PROPERTIES.SRC,s.TAG_PROPERTIES.INNER_HTML],e),styleTags:g(s.TAG_NAMES.STYLE,[s.TAG_PROPERTIES.CSS_TEXT],e),title:d(e),titleAttributes:f(s.ATTRIBUTE_NAMES.TITLE,e)}},t.requestAnimationFrame=A,t.warn=v}).call(this,n("yLpj"))},vg9a:function(e,t,n){},wTIg:function(e,t,n){"use strict";var r=n("lSNA"),a=n.n(r),i=n("q1tI"),o=n("9uj6"),s=n("qKvR"),c=n("SIPS"),l=n("MiSq"),u=o.a,d=function(e){return"theme"!==e&&"innerRef"!==e},p=function(e){return"string"==typeof e&&e.charCodeAt(0)>96?u:d};function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function m(e){for(var t=1;t0?u:n?[n]:[]},t.apiRunnerAsync=function(e,t,n){return r.reduce((function(n,r){return r.plugin[e]?n.then((function(){return r.plugin[e](t,r.options)})):n}),Promise.resolve())}},yHiX:function(e,t,n){"use strict";var r,a,i=n("q1tI");try{a=n("RJKl"),r=a&&a.default||a}catch(o){throw-1!==o.toString().indexOf("Error: Cannot find module")?new Error("Couldn't find layout component at \"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/src/templates/docs.js.\n\nPlease create layout component in that location or specify path to layout component in gatsby-config.js"):(console.error(o),o)}e.exports=function(e){var t=e.element,n=e.props;return i.createElement(r,n,t)}},yJwK:function(e,t,n){"use strict";e.exports=function(e,t,n,r,a,i,o,s){if(!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,a,i,o,s],u=0;(c=new Error(t.replace(/%s/g,(function(){return l[u++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},"z9I/":function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var r=function(){function e(e){this.isSpeedy=void 0===e.speedy||e.speedy,this.tags=[],this.ctr=0,this.nonce=e.nonce,this.key=e.key,this.container=e.container,this.before=null}var t=e.prototype;return t.insert=function(e){if(this.ctr%(this.isSpeedy?65e3:1)==0){var t,n=function(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),void 0!==e.nonce&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t}(this);t=0===this.tags.length?this.before:this.tags[this.tags.length-1].nextSibling,this.container.insertBefore(n,t),this.tags.push(n)}var r=this.tags[this.tags.length-1];if(this.isSpeedy){var a=function(e){if(e.sheet)return e.sheet;for(var t=0;t=0||(a[n]=e[n]);return a}n.d(t,"a",(function(){return r}))}},[["UxWs",1,5,7,0]]]); -//# sourceMappingURL=app-55220dc7c065ea1bf3d7.js.map \ No newline at end of file diff --git a/sites/oteguide/app-55220dc7c065ea1bf3d7.js.map b/sites/oteguide/app-55220dc7c065ea1bf3d7.js.map deleted file mode 100644 index d49c9c54..00000000 --- a/sites/oteguide/app-55220dc7c065ea1bf3d7.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./node_modules/gatsby-link/index.js","webpack:///./node_modules/gatsby-react-router-scroll/session-storage.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireWildcard.js","webpack:///./node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","webpack:///./.cache/normalize-page-path.js","webpack:///./.cache/find-path.js","webpack:///./node_modules/prism-react-renderer/themes/duotoneDark/index.js","webpack:///./node_modules/prism-react-renderer/dist/index.js","webpack:///./src/components/images/twitter-brands-block.svg","webpack:///./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack:///./node_modules/@emotion/memoize/dist/memoize.browser.esm.js","webpack:///./node_modules/mitt/dist/mitt.es.js","webpack:///./.cache/emitter.js","webpack:///./node_modules/gatsby-react-router-scroll/index.js","webpack:///./node_modules/@mdx-js/react/dist/esm.js","webpack:///./node_modules/react-side-effect/lib/index.js","webpack:///./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack:///./.cache/react-lifecycles-compat.js","webpack:///./node_modules/@reach/router/es/lib/history.js","webpack:///./node_modules/@emotion/is-prop-valid/dist/is-prop-valid.browser.esm.js","webpack:///./src/components/images/twitter.svg","webpack:///./node_modules/gatsby-plugin-catch-links/gatsby-browser.js","webpack:///./node_modules/gatsby-plugin-mdx/context.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack:///./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./node_modules/react-loadable/lib/index.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack:///./gatsby-browser.js","webpack:///./node_modules/shallowequal/index.js","webpack:///./.cache/page-renderer.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack:///./.cache/caches/gatsby-plugin-mdx/mdx-scopes-dir/e92f8988d65cf25c087d226e6c0ef06f.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./node_modules/@reach/router/es/lib/utils.js","webpack:///./.cache/api-runner-browser-plugins.js","webpack:///./src/components/images/logo.svg","webpack:///./node_modules/@emotion/unitless/dist/unitless.browser.esm.js","webpack:///./node_modules/@mikaelkristiansson/domready/ready.js","webpack:///./node_modules/@emotion/hash/dist/hash.browser.esm.js","webpack:///./node_modules/@emotion/serialize/dist/serialize.browser.esm.js","webpack:///./.cache/register-service-worker.js","webpack:///./.cache/_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/is-absolute-url/index.js","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack:///./node_modules/prism-react-renderer/themes/vsDark/index.js","webpack:///./src/components/mdxComponents/loading.js","webpack:///./src/components/mdxComponents/codeBlock.js","webpack:///./src/components/mdxComponents/anchor.js","webpack:///./src/components/mdxComponents/index.js","webpack:///./node_modules/emotion-theming/dist/emotion-theming.browser.esm.js","webpack:///./src/components/theme/index.js","webpack:///./src/components/link.js","webpack:///./src/components/DarkModeSwitch.js","webpack:///./src/components/images/opened.js","webpack:///./src/components/images/closed.js","webpack:///./src/components/sidebar/treeNode.js","webpack:///./src/components/sidebar/tree.js","webpack:///./node_modules/react-feather/dist/icons/external-link.js","webpack:///./src/components/sidebar/index.js","webpack:///./src/components/Header.js","webpack:///./node_modules/create-emotion/dist/create-emotion.browser.esm.js","webpack:///./node_modules/emotion/dist/emotion.esm.js","webpack:///./src/components/styles/GlobalStyles.js","webpack:///./src/components/theme/themeProvider.js","webpack:///./src/components/styles/Sidebar.js","webpack:///./src/components/rightSidebar.js","webpack:///./src/components/layout.js","webpack:///./src/components/styles/PageNavigationButtons.js","webpack:///./src/components/NextPrevious.js","webpack:///./src/components/styles/Docs.js","webpack:///./src/templates/MobileScrollUpButton.js","webpack:///./src/templates/docs.js","webpack:///./node_modules/@emotion/utils/dist/utils.browser.esm.js","webpack:///./node_modules/prism-react-renderer/prism/index.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/react-helmet/lib/Helmet.js","webpack:///./node_modules/react-is/index.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./node_modules/@emotion/stylis/dist/stylis.browser.esm.js","webpack:///./node_modules/@emotion/cache/dist/cache.browser.esm.js","webpack:///./.cache/route-announcer-props.js","webpack:///./.cache/navigation.js","webpack:///./node_modules/shallow-compare/es/index.js","webpack:///./.cache/ensure-resources.js","webpack:///./.cache/production-app.js","webpack:///./src/components/images/day.png","webpack:///./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack:///./node_modules/gatsby-plugin-mdx/mdx-renderer.js","webpack:///./src/components/images/night.png","webpack:///./node_modules/gatsby/dist/internal-plugins/bundle-optimisations/polyfills/object-assign.js","webpack:///./node_modules/@reach/router/es/index.js","webpack:///./src/components/images/help.svg","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./src/components/images/discord-brands-block.svg","webpack:///./node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js","webpack:///./node_modules/gatsby-plugin-gtag/gatsby-browser.js","webpack:///./node_modules/react-fast-compare/index.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./.cache/strip-prefix.js","webpack:///./node_modules/gatsby-link/parse-path.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack:///./.cache/prefetch.js","webpack:///./.cache/loader.js","webpack:///./node_modules/gatsby-plugin-mdx/loaders/mdx-scopes.js","webpack:///./node_modules/gatsby-plugin-mdx/wrap-root-element.js","webpack:///./node_modules/gatsby-plugin-mdx/gatsby-browser.js","webpack:///./node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js","webpack:///./node_modules/gatsby-plugin-layout/gatsby-browser.js","webpack:///./node_modules/gatsby-plugin-mdx/loaders/mdx-components.js","webpack:///./node_modules/react-helmet/lib/HelmetConstants.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-container.js","webpack:///./node_modules/gatsby-plugin-catch-links/catch-links.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./.cache/public-page-renderer.js","webpack:///./.cache/create-react-context.js","webpack:///./config.js","webpack:///./node_modules/escape-string-regexp/index.js","webpack:///./node_modules/@babel/runtime/helpers/extends.js","webpack:///./node_modules/@emotion/core/dist/emotion-element-57a3a7a3.browser.esm.js","webpack:///./node_modules/@emotion/css/dist/css.browser.esm.js","webpack:///./node_modules/@emotion/core/dist/core.browser.esm.js","webpack:///./node_modules/react-is/cjs/react-is.production.min.js","webpack:///./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./node_modules/@babel/runtime/helpers/construct.js","webpack:///./node_modules/react-helmet/lib/HelmetUtils.js","webpack:///./node_modules/@emotion/styled-base/dist/styled-base.browser.esm.js","webpack:///./node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///./.cache/api-runner-browser.js","webpack:///./node_modules/gatsby-plugin-layout/wrap-page.js","webpack:///./node_modules/@reach/router/node_modules/invariant/browser.js","webpack:///./node_modules/@emotion/sheet/dist/sheet.browser.esm.js","webpack:///./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js"],"names":["_interopRequireDefault","require","exports","__esModule","withPrefix","withAssetPrefix","path","getGlobalPathPrefix","navigateTo","replace","push","navigate","default","_objectWithoutPropertiesLoose2","_extends2","_assertThisInitialized2","_inheritsLoose2","_propTypes","_react","_router","_utils","_parsePath","parsePath","isAbsolutePath","startsWith","prefix","_ref","_prefix","getGlobalBasePrefix","isLocalLink","base","endsWith","slice","__PATH_PREFIX__","__BASE_PATH__","rewriteLinkPath","relativeTo","current","resolve","absolutify","NavLinkPropTypes","activeClassName","string","activeStyle","object","partiallyActive","bool","GatsbyLink","_React$Component","props","_this","call","this","defaultGetProps","_ref2","isPartiallyCurrent","isCurrent","className","filter","Boolean","join","style","IOSupported","window","IntersectionObserver","state","handleRef","bind","_proto","prototype","componentDidUpdate","prevProps","prevState","to","___loader","enqueue","location","pathname","componentDidMount","componentWillUnmount","io","_this$io","instance","el","unobserve","disconnect","ref","cb","_this2","innerRef","hasOwnProperty","entries","forEach","entry","target","isIntersecting","intersectionRatio","observe","render","_this3","_this$props","_this$props$getProps","getProps","_onClick","onClick","_onMouseEnter","onMouseEnter","rest","createElement","Location","_ref3","prefixedTo","Link","e","hovering","button","defaultPrevented","metaKey","altKey","ctrlKey","shiftKey","preventDefault","shouldReplace","encodeURI","___navigate","href","Component","propTypes","func","isRequired","showDeprecationWarning","functionName","altFunctionName","version","console","warn","_default","forwardRef","options","___push","___replace","SessionStorage","read","key","stateKey","getStateKey","value","sessionStorage","getItem","JSON","parse","save","storedValue","stringify","setItem","stateKeyBase","_typeof","_getRequireWildcardCache","WeakMap","cache","module","obj","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","desc","set","reactIs","REACT_STATICS","childContextTypes","contextType","contextTypes","defaultProps","displayName","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","type","KNOWN_STATICS","name","length","caller","callee","arguments","arity","MEMO_STATICS","compare","TYPE_STATICS","getStatics","component","isMemo","ForwardRef","Memo","getOwnPropertyNames","getOwnPropertySymbols","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","concat","targetStatics","sourceStatics","i","descriptor","undefined","charAt","pathCache","Map","matchPaths","trimPathname","rawPathname","decodeURIComponent","stripPrefix","split","URL","setMatchPaths","findMatchPath","trimmedPathname","cleanPath","pickPaths","map","matchPath","originalPath","pick","normalizePagePath","route","grabMatchParams","params","findPath","foundPath","plain","backgroundColor","color","styles","types","opacity","textDecorationLine","fontStyle","fontWeight","Prism","theme","_defineProperty","enumerable","configurable","writable","_extends","assign","source","apply","newlineRe","normalizeEmptyLines","line","content","empty","appendTypes","add","typesSize","themeToDict","language","create","themeDict","reduce","acc","themeEntry","languages","includes","accStyle","root","objectWithoutProperties","exclude","k","indexOf","Highlight","this$1","args","len","prevTheme","prevLanguage","output","getThemeDict","display","baseStyle","typeStyles","token","children","getStyleForToken","__proto__","constructor","code","grammar","tokens","typeArrStack","tokenArrStack","tokenArrIndexStack","tokenArrSizeStack","stackIndex","currentLine","alias","splitByNewlines","newlineCount","i$1","pop","normalizeTokens","tokenize","getLineProps","getTokenProps","useScrollRestoration","identifier","useLocation","useContext","_scrollHandler","ScrollContext","useRef","useLayoutEffect","position","scrollTo","onScroll","scrollTop","fn","arg","emitter","all","on","handler","off","splice","emit","evt","mitt","ScrollContainer","ScrollHandler","_scrollContainer","_useScrollRestoration","ownKeys","enumerableOnly","symbols","sym","_objectSpread2","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","MDXContext","createContext","withMDXComponents","allComponents","useMDXComponents","components","contextComponents","MDXProvider","Provider","DEFAULTS","inlineCode","wrapper","Fragment","MDXCreateElement","propComponents","mdxType","originalType","parentName","etc","argsLength","createElementArgArray","Array","newProps","_interopDefault","ex","React","React__default","shallowEqual","canUseDOM","document","reducePropsToState","handleStateChangeOnClient","mapStateOnServer","Error","WrappedComponent","mountedInstances","emitChange","SideEffect","_Component","subClass","superClass","peek","rewind","recordedState","shouldComponentUpdate","nextProps","componentWillMount","index","getDisplayName","polyfill","getLocation","_source$location","search","hash","origin","protocol","host","hostname","port","decodeURI","history","createHistory","listeners","transitioning","resolveTransition","_onTransitionComplete","listen","listener","popstateListener","action","addEventListener","removeEventListener","_ref$replace","go","Date","now","replaceState","pushState","transition","Promise","res","createMemorySource","initialPath","searchIndex","initialLocation","substr","stack","states","_","uri","_uri$split","_uri$split$","_uri$split2","_uri$split2$","newIndex","globalHistory","reactPropsRegex","prop","test","charCodeAt","_gatsby","_catchLinks","onClientEntry","pluginOptions","GatsbyMDXScopeContext","useMDXScope","scope","contextScope","MDXScopeProvider","__mdxScope","TypeError","_unsupportedIterableToArray","o","minLen","n","toString","from","Symbol","iterator","_classCallCheck","Constructor","_possibleConstructorReturn","self","ReferenceError","_inherits","setPrototypeOf","PropTypes","ALL_INITIALIZERS","READY_INITIALIZERS","load","loader","promise","loading","loaded","error","then","catch","err","loadMap","promises","result","createLoadableComponent","loadFn","_class","_temp","opts","delay","timeout","webpack","modules","init","getModuleIds","every","moduleId","LoadableComponent","retry","setState","timedOut","_loadModule","pastDelay","preload","_mounted","context","loadable","isArray","moduleName","report","_delay","setTimeout","_timeout","update","_clearTimeouts","clearTimeout","isLoading","shape","Loadable","Capture","_React$Component2","getChildContext","Children","only","flushInitializers","initializers","preloadAll","reject","preloadReady","iter","_interopRequireWildcard","_sessionStorage","_len","_key","_stateStorage","scrollListener","scrollY","windowScroll","shouldUpdateScroll","scrollToHash","node","getElementById","substring","scrollIntoView","prevRouterProps","routerProps","scrollPosition","_this$props$location","_this$props$location2","element","onServiceWorkerUpdateReady","confirm","reload","objA","objB","compareContext","ret","keysA","keysB","bHasOwnProperty","idx","valueA","valueB","PageRenderer","pageResources","json","pageContext","__params","pathContext","pageElement","apiRunner","publicLoader","page","arrayLikeToArray","arr","_toConsumableArray","unsupportedIterableToArray","routes","match","default_","uriPathname","uriSegments","segmentize","isRootUri","ranked","rankRoutes","l","missed","routeSegments","max","Math","routeSegment","uriSegment","isSplat","dynamicMatch","paramRe","exec","reservedNames","_to$split","toPathname","toQuery","basePathname","toSegments","baseSegments","addQuery","allSegments","segments","segment","insertParams","_path$split","pathBase","_path$split$","query","constructedPath","_params$location","_params$location$sear","searchSplit","validateRedirect","isDynamic","sort","rankRoute","score","isRootSegment","SEGMENT_POINTS","a","b","q","shallowCompare","obj1","obj2","obj1Keys","plugin","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","msGridRow","msGridRowSpan","msGridColumn","msGridColumnSpan","lineHeight","order","orphans","tabSize","widows","zIndex","zoom","WebkitLineClamp","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","ie10","navigator","appVersion","fns","doc","hack","documentElement","doScroll","readyState","shift","definition","str","h","hyphenateRegex","animationRegex","isCustomProperty","property","isProcessableValue","processStyleName","styleName","toLowerCase","p1","p2","cursor","next","handleInterpolation","mergedProps","registered","interpolation","couldBeSelectorInterpolation","__emotion_styles","anim","interpolated","_i","createStringFromObject","previousCursor","cached","labelPattern","stringMode","strings","raw","lastIndex","identifierName","serviceWorker","register","reg","installingWorker","installing","log","controller","___swUpdated","___failedResources","url","arrayWithoutHoles","iterableToArray","nonIterableSpread","LoadingProvider","CodeBlock","exampleCode","prismTheme","p","tokensLength","lastToken","cleanTokens","lineClass","isDiff","lineProps","splitToken","diffStyle","userSelect","MozUserSelect","WebkitUserSelect","firstChar","AnchorTag","link","rel","StyledPre","colors","preFormattedText","h1","id","pre","getTheme","outerTheme","_objectSpread","createCacheWithTheme","Consumer","baseTheme","fonts","mono","lightTheme","background","heading","text","darkTheme","isAbsoluteUrl","StyledSwitch","NightImage","DayImage","DarkModeSwitch","isDarkThemeActive","toggleActiveTheme","onChange","checked","OpenedSvg","xmlns","width","height","viewBox","d","ClosedSvg","TreeNode","setCollapsed","collapsed","title","items","isCollapsed","hasChildren","calculatedClassName","config","gatsby","pathPrefix","sidebar","frontLine","aria-label","item","Tree","edges","treeData","useState","tree","ignoreIndex","fields","slug","accu","parts","prevItems","part","tmp","find","label","trailingSlash","slicedLength","existingItem","forcedNavOrder","reverse","findIndex","unshift","calculateTreeData","defaultCollapsed","collapsedNav","ExternalLink","_ref$color","_ref$size","size","fill","stroke","strokeLinecap","strokeLinejoin","points","x1","y1","x2","y2","ListItem","active","level","Sidebar","Divider","SidebarLayout","allMdx","dangerouslySetInnerHTML","__html","links","help","isSearchEnabled","header","enabled","searchIndices","indexName","hitComp","myFunction","x","StyledBgDiv","Header","data","logoImg","twitter","site","siteMetadata","headerTitle","helpUrl","tweetText","logo","headerLinks","finalLogoLink","src","image","alt","social","collapse","indices","onKeyDown","role","tabIndex","insertWithoutScoping","serialized","inserted","insert","sheet","merge","css","registeredStyles","rawClassName","classnames","cls","toAdd","_createEmotion","speedy","isSpeedy","compat","cx","_len4","_key4","injectGlobal","_len3","_key3","keyframes","_len2","_key2","animation","hydrate","ids","flush","getRegisteredStyles","baseStyles","ThemeProvider","retrieveActiveTheme","localStorage","currentActiveTheme","finalNavItems","innerItems","tableOfContents","innerItem","itemId","Wrapper","Content","MaxWidth","LeftSideBarWidth","RightSideBarWidth","Layout","mdxComponents","StyledNextPrevious","NextPrevious","currentIndex","mdx","nav","nextInfo","previousInfo","preserveAspectRatio","StyledHeading","Edit","StyledMainWrapper","MobileScrollUpButton","hideButton","setHideButton","prevScrollHeight","setPrevScrollHeight","showOrHide","useEffect","onscroll","scroll","MDXRuntimeTest","navItems","docsLocation","cur","metaTitle","frontmatter","metaDescription","canonicalUrl","siteUrl","body","classNames","insertStyles","isStringTag","uniqueId","Token","util","encode","objId","clone","visited","v","extend","redef","lang","insertBefore","inside","before","newToken","DFS","callback","plugins","highlight","env","matchGrammar","strarr","startPos","oneshot","patterns","j","pattern","lookbehind","greedy","lookbehindLength","global","flags","RegExp","pos","delNum","after","wrapped","hooks","matchedStr","parent","tag","classes","attributes","aliases","markup","tagName","includedCdataInside","def","xml","html","mathml","svg","envVars","insideString","bash","variable","toBeCopied","shell","clike","punctuation","c","cpp","addInlined","selector","javascript","js","jsx","stringifyToken","walkTokens","openedTags","notTagNorBrace","openedBraces","plainText","javaDocLike","javadoclike","docLanguage","docCommentSupport","addSupport","keywords","java","function","getPlaceholder","toUpperCase","buildPlaceholders","placeholderPattern","replaceFilter","tokenStack","placeholder","tokenizePlaceholders","t","s","middle","replacement","php","string_interpolation","parameterPrefix","jsdoc","actionscript","comment","coffeescript","coffee","maybeClassNameTokens","flow","keyword","n4js","n4jsd","typescript","ts","templateString","templateLiteralPattern","interpolationObject","interpolationPunctuationObject","interpolationPattern","createTemplate","counter","tokenizeWithHooks","run","tokenizeInterpolationExpression","expression","tempGrammar","tokenizeEmbedded","_tokens","placeholderCounter","placeholderMap","embeddedTokens","interpolationExpression","placeholders","afterTokens","supportedLanguages","stringContent","findTemplateStrings","embedded","graphql","inner","createInline","starAlternative","tableCell","tableRow","tableLine","markdown","codeLang","codeBlock","trim","autoloader","valueOf","floor","random","loadLanguages","ele","innerHTML","textContent","md","diff","PREFIXES","git","handlebars","less","makefile","objectivec","ocaml","python","py","reason","sass","atrule","operator","important","scss","sql","stylus","tsx","wasm","yaml","yml","_setPrototypeOf","Helmet","_createClass","protoProps","staticProps","_react2","_propTypes2","_reactSideEffect2","_reactFastCompare2","_HelmetUtils","_HelmetConstants","HelmetSideEffects","handleClientStateChange","HelmetExport","HelmetWrapper","mapNestedChildrenToProps","child","nestedChildren","TAG_NAMES","SCRIPT","NOSCRIPT","STYLE","cssText","flattenArrayTypeChildren","arrayTypeChildren","newChildProps","mapObjectTypeChildren","_extends3","_extends4","TITLE","titleAttributes","BODY","bodyAttributes","HTML","htmlAttributes","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_extends5","warnOnInvalidChildren","mapChildrenToProps","_child$props","childProps","convertReactPropstoHtmlAttributes","LINK","META","_props","oneOfType","arrayOf","defaultTitle","defer","encodeSpecialCharacters","meta","noscript","onChangeClientState","script","titleTemplate","mappedState","baseTag","linkTags","metaTags","noscriptTags","scriptTags","styleTags","renderStatic","W","X","ia","m","Z","F","P","w","L","ja","ka","aa","G","ba","la","ma","R","na","ea","oa","H","g","A","S","B","U","D","z","M","y","C","K","u","r","I","J","f","N","ca","O","da","fa","Y","E","ha","Q","use","T","toSheet","block","Sheet","ruleSheet","selectors","parents","column","ns","depth","at","delimiter","stylisOptions","stylis","container","head","_insert","nodes","querySelectorAll","getAttribute","parentNode","appendChild","stylisPlugins","shouldCache","nonce","RouteAnnouncerProps","top","padding","overflow","clip","whiteSpace","border","redirectMap","redirects","redirect","fromPath","maybeRedirect","toPath","onPreRouteUpdate","prevLocation","onRouteUpdate","timeoutId","loadPage","status","PageResourceStatus","webpackCompilationHash","___webpackCompilationHash","postMessage","gatsbyApi","reachNavigate","results","getSavedScrollPosition","RouteAnnouncer","announcementRef","createRef","requestAnimationFrame","pageName","pageHeadings","newAnnouncement","innerText","compareLocationProps","nextLocation","RouteUpdates","shallowDiffers","EnsureResources","loadPageSync","loadResources","rawPath","nextState","ProdLoader","asyncRequires","setLoader","setApiRunner","___emitter","apiRunnerAsync","RouteHandler","baseuri","basepath","DataContext","GatsbyRoot","staticQueryResults","getStaticQueryResults","LocationHandler","pagePath","browserLoc","SiteRoot","App","renderer","ReactDOM","domReady","prefetchPathname","StaticQueryContext","StaticQueryDataRenderer","staticQueryData","finalData","StaticQuery","useStaticQuery","isNaN","Number","arr2","mdxScope","End","fullScope","values","createNamedContext","defaultValue","Ctx","LocationContext","LocationProvider","getContext","refs","unlisten","_props$history","componentDidCatch","info","isRedirect","_navigate","unmounted","ServerLocation","BaseContext","Router","baseContext","locationContext","RouterImpl","_React$PureComponent","_navigate2","primary","_props$component","domProps","toArray","array","createRoute","cloneElement","FocusWrapper","FocusHandler","wrapperProps","PureComponent","FocusContext","requestFocus","FocusHandlerImpl","initialRender","focusHandlerCount","_temp2","_this4","shouldFocus","focus","myURIChanged","navigatedUpToMe","contains","activeElement","_this5","_props2","_props2$component","Comp","outline","_ref4","_ref5","_ref6","_props$getProps","anchorProps","encodedHref","event","shouldNavigate","_location$state","restState","RedirectRequest","redirectTo","RedirectImpl","_React$Component3","_props3","_props3$replace","noThrow","resolvedTo","_props4","Redirect","_ref7","Match","_ref8","_ref9","_ref10","resolvedPath","useNavigate","useParams","useMatch","stripSlashes","elementPath","_arrayLikeToArray","Reflect","construct","sham","Proxy","trackingId","GATSBY_GTAG_PLUGIN_GA_TRACKING_ID","anonymize","GATSBY_GTAG_PLUGIN_ANONYMIZE","gtag","locationStr","anonymizeObj","anonymize_ip","page_path","keyList","hasProp","hasElementType","Element","equal","arrA","arrB","dateA","dateB","getTime","regexpA","regexpB","$$typeof","message","number","hashIndex","_inheritsLoose","supportedPrefetchStrategy","feature","fakeLink","relList","supports","support","setAttribute","onload","onerror","getElementsByTagName","getElementsByName","req","XMLHttpRequest","open","send","preFetched","prefetch","Success","preferDefault","createPageDataUrl","doFetch","method","onreadystatechange","toPageResources","pageData","componentChunkName","staticQueryHashes","BaseLoader","loadComponent","inFlightNetworkRequests","pageDb","inFlightDb","staticQueryDb","pageDataDb","prefetchTriggered","Set","prefetchCompleted","memoizedGet","inFlightPromise","response","delete","prefetchDisabled","some","fetchPageDataJson","loadObj","retries","responseText","jsonPayload","payload","notFound","loadPageDataJson","loadAppData","allData","finalResult","componentChunkPromise","createdAt","staticQueryBatchPromise","staticQueryHash","staticQueryResultsMap","shouldPrefetch","connection","effectiveType","saveData","doesConnectionSupportPrefetch","realPath","doPrefetch","pageDataUrl","prefetchHelper","crossOrigin","as","getResourceURLsForPathname","createComponentUrls","isPageNotFound","appData","___chunkMapping","chunk","chunkName","componentUrls","_loader","getResourcesForPathname","getResourcesForPathnameSync","scope_0","componentsAndGuards","mdxPlugins","guards","componentName","guard","componentFromGuards","MDXConsumer","componentsFromContext","scopeContexts","wrapRootElement","wrapPageElement","ATTRIBUTE_NAMES","BASE","HEAD","REACT_TAG_MAP","VALID_TAG_NAMES","TAG_PROPERTIES","CHARSET","CSS_TEXT","HREF","HTTPEQUIV","INNER_HTML","ITEM_PROP","NAME","PROPERTY","REL","SRC","accesskey","charset","class","contenteditable","contextmenu","itemprop","tabindex","HELMET_PROPS","DEFAULT_TITLE","DEFER","ENCODE_SPECIAL_CHARACTERS","ON_CHANGE_CLIENT_STATE","TITLE_TEMPLATE","HTML_TAG_MAP","SELF_CLOSING_TAGS","HELMET_ATTRIBUTE","_reactDom","scrollKey","ScrollContainerImplementation","findDOMNode","clickHandler","routeThroughBrowserOrApp","hashShouldBeFollowed","pathIsNotHandledByApp","urlsAreOnSameOrigin","authorIsForcingNavigation","anchorsTargetIsEquivalentToSelf","findClosestAnchor","navigationWasHandledElsewhere","slashedPathname","userIsForcingNavigation","_escapeStringRegexp","nodeName","anchor","hasAttribute","ownerDocument","defaultView","destination","pathStartRegEx","hrefHandler","clickedAnchor","SVGAnimatedString","animVal","excludePattern","destinationPathname","gaTrackingId","logoLink","githubUrl","algoliaAppId","process","algoliaSearchKey","algoliaAdminKey","ALGOLIA_ADMIN_KEY","frontline","description","ogImage","favicon","pwa","manifest","short_name","start_url","background_color","theme_color","icons","sizes","matchOperatorsRe","EmotionCacheContext","HTMLElement","ThemeContext","typePropName","createEmotionProps","cssProp","Emotion","Global","InnerGlobal","updater","querySelector","tags","nextElementSibling","for","AsyncMode","ConcurrentMode","ContextConsumer","ContextProvider","Lazy","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isPortal","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","ProdPageRenderer","InternalPageRenderer","isNativeReflectConstruct","_construct","Parent","Class","Function","_objectAssign2","clock","String","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","tagAttrs","getBaseTagFromPropsList","primaryAttributes","innermostBaseTag","lowerCaseAttributeKey","getTagsFromPropsList","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","tagUnion","rafPolyfill","currentTime","cafPolyfill","webkitRequestAnimationFrame","mozRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","msg","_helmetCallback","commitTagChanges","newState","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","elementTag","helmetAttributeString","helmetAttributes","attributesToRemove","attributeKeys","attribute","indexToSave","removeAttribute","headElement","tagNodes","indexToDelete","newElement","styleSheet","createTextNode","existingTag","isEqualNode","removeChild","generateElementAttributesAsString","attr","convertElementAttributestoReactProps","initProps","getMethodsForTag","toComponent","_initProps","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","generateTagsAsReactComponent","attributeHtml","tagContent","isSelfClosing","generateTagsAsString","initAttributes","_ref$title","testOmitPropsOnStringTag","testOmitPropsOnComponent","getDefaultShouldForwardProp","createStyled","shouldForwardProp","targetClassName","__emotion_forwardProp","propName","isReal","__emotion_real","__emotion_base","defaultShouldForwardProp","shouldUseAs","Styled","finalTag","classInterpolations","finalShouldForwardProp","withComponent","nextTag","nextOptions","api","defaultReturn","argTransform","previous","GATSBY_LAYOUT_COMPONENT_PATH","condition","format","argIndex","framesToPop","StyleSheet","ctr","rule","_tag","createStyleElement","nextSibling","styleSheets","ownerNode","sheetForTag","isImportRule","insertRule","cssRules"],"mappings":";6FAEA,IAAIA,EAAyBC,EAAQ,QAErCC,EAAQC,YAAa,EACrBD,EAAQE,WAAaA,EACrBF,EAAQG,gBA4DR,SAAyBC,GACvB,OAAOF,EAAWE,EAAMC,MA5D1BL,EAAQM,WAAaN,EAAQO,QAAUP,EAAQQ,KAAOR,EAAQS,SAAWT,EAAQU,aAAU,EAE3F,IAAIC,EAAiCb,EAAuBC,EAAQ,SAEhEa,EAAYd,EAAuBC,EAAQ,SAE3Cc,EAA0Bf,EAAuBC,EAAQ,SAEzDe,EAAkBhB,EAAuBC,EAAQ,SAEjDgB,EAAajB,EAAuBC,EAAQ,SAE5CiB,EAASlB,EAAuBC,EAAQ,SAExCkB,EAAUlB,EAAQ,QAElBmB,EAASnB,EAAQ,QAEjBoB,EAAapB,EAAQ,QAEzBC,EAAQoB,UAAYD,EAAWC,UAE/B,IAAIC,EAAiB,SAAwBjB,GAC3C,OAAOA,aAAmC,EAASA,EAAKkB,WAAW,MAGrE,SAASpB,EAAWE,EAAMmB,GACxB,IAAIC,EAAMC,EAMV,QAJe,IAAXF,IACFA,EAASG,MAGNC,EAAYvB,GACf,OAAOA,EAGT,GAAIA,EAAKkB,WAAW,OAASlB,EAAKkB,WAAW,OAC3C,OAAOlB,EAGT,IAAIwB,EAAwG,QAAhGJ,EAA8B,QAAtBC,EAAUF,SAAgC,IAAZE,EAAqBA,EAAUpB,WAA4C,IAATmB,EAAkBA,EAAO,IAC7I,MAAO,KAAOI,aAAmC,EAASA,EAAKC,SAAS,MAAQD,EAAKE,MAAM,GAAI,GAAKF,IAASxB,EAAKkB,WAAW,KAAOlB,EAAO,IAAMA,GAKnJ,IAAIC,EAAsB,WACxB,MAAsH0B,IAGpHL,EAAsB,WACxB,MAAkHM,IAGhHL,EAAc,SAAqBvB,GACrC,OAAOA,IAASA,EAAKkB,WAAW,aAAelB,EAAKkB,WAAW,cAAgBlB,EAAKkB,WAAW,OAgBjG,IAAIW,EAAkB,SAAyB7B,EAAM8B,GACnD,MAAoB,iBAAT9B,EACFA,EAGJuB,EAAYvB,GAIViB,EAAejB,GAAQF,EAAWE,GAlB3C,SAAoBA,EAAM+B,GAExB,OAAId,EAAejB,GACVA,GAGF,EAAIc,EAAOkB,SAAShC,EAAM+B,GAYgBE,CAAWjC,EAAM8B,GAHzD9B,GAMPkC,EAAmB,CACrBC,gBAAiBxB,EAAWL,QAAQ8B,OACpCC,YAAa1B,EAAWL,QAAQgC,OAChCC,gBAAiB5B,EAAWL,QAAQkC,MAyBlCC,EAA0B,SAAUC,GAGtC,SAASD,EAAWE,GAClB,IAAIC,GAEJA,EAAQF,EAAiBG,KAAKC,KAAMH,IAAUG,MAExCC,gBAAkB,SAAUC,GAChC,IAAIC,EAAqBD,EAAMC,mBAC3BC,EAAYF,EAAME,UAEtB,OAAIN,EAAMD,MAAMJ,gBAAkBU,EAAqBC,GAC9C,CACLC,UAAW,CAACP,EAAMD,MAAMQ,UAAWP,EAAMD,MAAMR,iBAAiBiB,OAAOC,SAASC,KAAK,KACrFC,OAAO,EAAI/C,EAAUF,SAAS,GAAIsC,EAAMD,MAAMY,MAAOX,EAAMD,MAAMN,cAI9D,MAGT,IAAImB,GAAc,EAUlB,MARsB,oBAAXC,QAA0BA,OAAOC,uBAC1CF,GAAc,GAGhBZ,EAAMe,MAAQ,CACZH,YAAaA,GAEfZ,EAAMgB,UAAYhB,EAAMgB,UAAUC,MAAK,EAAIpD,EAAwBH,SAASsC,IACrEA,GA/BT,EAAIlC,EAAgBJ,SAASmC,EAAYC,GAkCzC,IAAIoB,EAASrB,EAAWsB,UAmHxB,OAjHAD,EAAOE,mBAAqB,SAA4BC,EAAWC,GAE7DpB,KAAKH,MAAMwB,KAAOF,EAAUE,IAAOrB,KAAKa,MAAMH,aAChDY,UAAUC,SAAQ,EAAItD,EAAWC,WAAWa,EAAgBiB,KAAKH,MAAMwB,GAAIV,OAAOa,SAASC,WAAWA,WAI1GT,EAAOU,kBAAoB,WAEpB1B,KAAKa,MAAMH,aACdY,UAAUC,SAAQ,EAAItD,EAAWC,WAAWa,EAAgBiB,KAAKH,MAAMwB,GAAIV,OAAOa,SAASC,WAAWA,WAI1GT,EAAOW,qBAAuB,WAC5B,GAAK3B,KAAK4B,GAAV,CAIA,IAAIC,EAAW7B,KAAK4B,GAChBE,EAAWD,EAASC,SACpBC,EAAKF,EAASE,GAClBD,EAASE,UAAUD,GACnBD,EAASG,eAGXjB,EAAOF,UAAY,SAAmBoB,GACpC,IAtFiEH,EAAII,EACnEP,EAqFEQ,EAASpC,KAETA,KAAKH,MAAMwC,UAAYrC,KAAKH,MAAMwC,SAASC,eAAe,WAC5DtC,KAAKH,MAAMwC,SAASpD,QAAUiD,EACrBlC,KAAKH,MAAMwC,UACpBrC,KAAKH,MAAMwC,SAASH,GAGlBlC,KAAKa,MAAMH,aAAewB,IAE5BlC,KAAK4B,IAhG0DG,EAgG1BG,EAhG8BC,EAgGzB,WACxCb,UAAUC,SAAQ,EAAItD,EAAWC,WAAWa,EAAgBqD,EAAOvC,MAAMwB,GAAIV,OAAOa,SAASC,WAAWA,YAhG1GG,EAAK,IAAIjB,OAAOC,sBAAqB,SAAU2B,GACjDA,EAAQC,SAAQ,SAAUC,GACpBV,IAAOU,EAAMC,SAGXD,EAAME,gBAAkBF,EAAMG,kBAAoB,KACpDhB,EAAGI,UAAUD,GACbH,EAAGK,aACHE,YAMLU,QAAQd,GACJ,CACLD,SAAUF,EACVG,GAAIA,MAoFNf,EAAO8B,OAAS,WACd,IAAIC,EAAS/C,KAETgD,EAAchD,KAAKH,MACnBwB,EAAK2B,EAAY3B,GACjB4B,EAAuBD,EAAYE,SACnCA,OAAoC,IAAzBD,EAAkCjD,KAAKC,gBAAkBgD,EACpEE,EAAWH,EAAYI,QACvBC,EAAgBL,EAAYM,aAK5BzC,GAJmBmC,EAAY3D,gBAChB2D,EAAYzD,YACfyD,EAAYX,SACNW,EAAYvD,gBACtBuD,EAAYnC,OACpBxD,EAAU2F,EAAY3F,QACtBkG,GAAO,EAAI9F,EAA+BD,SAASwF,EAAa,CAAC,KAAM,WAAY,UAAW,eAAgB,kBAAmB,cAAe,WAAY,kBAAmB,QAAS,YAM5L,OAAoBlF,EAAON,QAAQgG,cAAczF,EAAQ0F,SAAU,MAAM,SAAUC,GACjF,IAAIlC,EAAWkC,EAAMlC,SACjBmC,EAAa5E,EAAgBsC,EAAIG,EAASC,UAC9C,OAAOhD,EAAYkF,GAA2B7F,EAAON,QAAQgG,cAAczF,EAAQ6F,MAAM,EAAIlG,EAAUF,SAAS,CAC9G6D,GAAIsC,EACJ9C,MAAOA,EACPqC,SAAUA,EACVb,SAAUU,EAAOjC,UACjBwC,aAAc,SAAsBO,GAC9BR,GACFA,EAAcQ,GAGhBvC,UAAUwC,UAAS,EAAI7F,EAAWC,WAAWyF,GAAYlC,WAE3D2B,QAAS,SAAiBS,GAKxB,GAJIV,GACFA,EAASU,KAGM,IAAbA,EAAEE,QACLhB,EAAOlD,MAAM6C,QACbmB,EAAEG,kBACFH,EAAEI,SACFJ,EAAEK,QAAWL,EAAEM,SAAYN,EAAEO,UAAU,CACtCP,EAAEQ,iBACF,IAAIC,EAAgBjH,EAChB+C,EAAYmE,UAAUZ,KAAgBhD,OAAOa,SAASC,SAEnC,kBAAZpE,GAAyB+C,IAClCkE,GAAgB,GAKlB3D,OAAO6D,YAAYb,EAAY,CAC7B9C,MAAOA,EACPxD,QAASiH,IAIb,OAAO,IAERf,IAAsBzF,EAAON,QAAQgG,cAAc,KAAK,EAAI9F,EAAUF,SAAS,CAChFiH,KAAMd,GACLJ,QAIA5D,EAtJqB,CAuJ5B7B,EAAON,QAAQkH,WAEjB/E,EAAWgF,WAAY,EAAIjH,EAAUF,SAAS,GAAI4B,EAAkB,CAClEgE,QAASvF,EAAWL,QAAQoH,KAC5BvD,GAAIxD,EAAWL,QAAQ8B,OAAOuF,WAC9BxH,QAASQ,EAAWL,QAAQkC,KAC5BmB,MAAOhD,EAAWL,QAAQgC,SAG5B,IAAIsF,EAAyB,SAAgCC,EAAcC,EAAiBC,GAC1F,OAAOC,QAAQC,KAAK,QAAWJ,EAAe,6DAAgEE,EAAU,iBAAoBD,EAAkB,eAG5JI,EAAwBtH,EAAON,QAAQ6H,YAAW,SAAUxF,EAAOqC,GACrE,OAAoBpE,EAAON,QAAQgG,cAAc7D,GAAY,EAAIjC,EAAUF,SAAS,CAClF6E,SAAUH,GACTrC,OAGL/C,EAAQU,QAAU4H,EAMlBtI,EAAQS,SAJO,SAAkB8D,EAAIiE,GACnC3E,OAAO6D,YAAYzF,EAAgBsC,EAAIV,OAAOa,SAASC,UAAW6D,IAKpE,IAAIhI,EAAO,SAAc+D,GACvByD,EAAuB,OAAQ,WAAY,GAE3CnE,OAAO4E,QAAQxG,EAAgBsC,EAAIV,OAAOa,SAASC,YAGrD3E,EAAQQ,KAAOA,EASfR,EAAQO,QAPM,SAAiBgE,GAC7ByD,EAAuB,UAAW,WAAY,GAE9CnE,OAAO6E,WAAWzG,EAAgBsC,EAAIV,OAAOa,SAASC,YAWxD3E,EAAQM,WALS,SAAoBiE,GAEnC,OADAyD,EAAuB,aAAc,WAAY,GAC1CxH,EAAK+D,K,oCC1TdvE,EAAQC,YAAa,EACrBD,EAAQ2I,oBAAiB,EACzB,IAGIA,EAA8B,WAChC,SAASA,KAET,IAAIzE,EAASyE,EAAexE,UA8C5B,OA5CAD,EAAO0E,KAAO,SAAclE,EAAUmE,GACpC,IAAIC,EAAW5F,KAAK6F,YAAYrE,EAAUmE,GAE1C,IACE,IAAIG,EAAQnF,OAAOoF,eAAeC,QAAQJ,GAC1C,OAAOE,EAAQG,KAAKC,MAAMJ,GAAS,EACnC,MAAOjC,GAKP,OAAIlD,QAAUA,OAAiC,+BAAKA,OAAiC,8BAAEiF,GAC9EjF,OAAiC,8BAAEiF,GAGrC,IAIX5E,EAAOmF,KAAO,SAAc3E,EAAUmE,EAAKG,GACzC,IAAIF,EAAW5F,KAAK6F,YAAYrE,EAAUmE,GACtCS,EAAcH,KAAKI,UAAUP,GAEjC,IACEnF,OAAOoF,eAAeO,QAAQV,EAAUQ,GACxC,MAAOvC,GACHlD,QAAUA,OAAiC,gCAG7CA,OAAiC,8BAAI,IAFrCA,OAAiC,8BAAEiF,GAAYK,KAAKC,MAAME,KAYhEpF,EAAO6E,YAAc,SAAqBrE,EAAUmE,GAClD,IAAIY,EAhDe,YAgDwB/E,EAASC,SACpD,OAAOkE,QAA6CY,EAAeA,EAAe,IAAMZ,GAGnFF,EAjDyB,GAoDlC3I,EAAQ2I,eAAiBA,G,uBC3DzB,IAAIe,EAAU,EAAQ,QAEtB,SAASC,IACP,GAAuB,mBAAZC,QAAwB,OAAO,KAC1C,IAAIC,EAAQ,IAAID,QAMhB,OAJAD,EAA2B,WACzB,OAAOE,GAGFA,EA4CTC,EAAO9J,QAzCP,SAAiC+J,GAC/B,GAAIA,GAAOA,EAAI9J,WACb,OAAO8J,EAGT,GAAY,OAARA,GAAiC,WAAjBL,EAAQK,IAAoC,mBAARA,EACtD,MAAO,CACL,QAAWA,GAIf,IAAIF,EAAQF,IAEZ,GAAIE,GAASA,EAAMG,IAAID,GACrB,OAAOF,EAAMI,IAAIF,GAGnB,IAAIG,EAAS,GACTC,EAAwBC,OAAOC,gBAAkBD,OAAOE,yBAE5D,IAAK,IAAIzB,KAAOkB,EACd,GAAIK,OAAOjG,UAAUqB,eAAevC,KAAK8G,EAAKlB,GAAM,CAClD,IAAI0B,EAAOJ,EAAwBC,OAAOE,yBAAyBP,EAAKlB,GAAO,KAE3E0B,IAASA,EAAKN,KAAOM,EAAKC,KAC5BJ,OAAOC,eAAeH,EAAQrB,EAAK0B,GAEnCL,EAAOrB,GAAOkB,EAAIlB,GAWxB,OANAqB,EAAgB,QAAIH,EAEhBF,GACFA,EAAMW,IAAIT,EAAKG,GAGVA,I,oCCjDT,IAAIO,EAAU,EAAQ,QAOlBC,EAAgB,CAClBC,mBAAmB,EACnBC,aAAa,EACbC,cAAc,EACdC,cAAc,EACdC,aAAa,EACbC,iBAAiB,EACjBC,0BAA0B,EAC1BC,0BAA0B,EAC1BC,QAAQ,EACRtD,WAAW,EACXuD,MAAM,GAEJC,EAAgB,CAClBC,MAAM,EACNC,QAAQ,EACRpH,WAAW,EACXqH,QAAQ,EACRC,QAAQ,EACRC,WAAW,EACXC,OAAO,GASLC,EAAe,CACjB,UAAY,EACZC,SAAS,EACTf,cAAc,EACdC,aAAa,EACblD,WAAW,EACXuD,MAAM,GAEJU,EAAe,GAInB,SAASC,EAAWC,GAElB,OAAIvB,EAAQwB,OAAOD,GACVJ,EAIFE,EAAaE,EAAoB,WAAMtB,EAVhDoB,EAAarB,EAAQyB,YAhBK,CACxB,UAAY,EACZlG,QAAQ,EACR8E,cAAc,EACdC,aAAa,EACblD,WAAW,GAYbiE,EAAarB,EAAQ0B,MAAQP,EAY7B,IAAIvB,EAAiBD,OAAOC,eACxB+B,EAAsBhC,OAAOgC,oBAC7BC,EAAwBjC,OAAOiC,sBAC/B/B,EAA2BF,OAAOE,yBAClCgC,EAAiBlC,OAAOkC,eACxBC,EAAkBnC,OAAOjG,UAuC7B2F,EAAO9J,QArCP,SAASwM,EAAqBC,EAAiBC,EAAiBC,GAC9D,GAA+B,iBAApBD,EAA8B,CAEvC,GAAIH,EAAiB,CACnB,IAAIK,EAAqBN,EAAeI,GAEpCE,GAAsBA,IAAuBL,GAC/CC,EAAqBC,EAAiBG,EAAoBD,GAI9D,IAAIE,EAAOT,EAAoBM,GAE3BL,IACFQ,EAAOA,EAAKC,OAAOT,EAAsBK,KAM3C,IAHA,IAAIK,EAAgBhB,EAAWU,GAC3BO,EAAgBjB,EAAWW,GAEtBO,EAAI,EAAGA,EAAIJ,EAAKtB,SAAU0B,EAAG,CACpC,IAAIpE,EAAMgE,EAAKI,GAEf,KAAK5B,EAAcxC,IAAU8D,GAAaA,EAAU9D,IAAWmE,GAAiBA,EAAcnE,IAAWkE,GAAiBA,EAAclE,IAAO,CAC7I,IAAIqE,EAAa5C,EAAyBoC,EAAiB7D,GAE3D,IAEEwB,EAAeoC,EAAiB5D,EAAKqE,GACrC,MAAOnG,OAKf,OAAO0F,I,wMCrGM,WAAArM,GACb,YAAa+M,IAAT/M,EACKA,EAED,MAAJA,EACI,IAEJ,MAAAA,EAAKgN,OAAOhN,EAAKmL,OAAS,GACrBnL,EAAK0B,MAAM,GAAI,GAEjB1B,GCNHiN,EAAY,IAAIC,IAClBC,EAAa,GAEXC,EAAe,SAAAC,GACnB,IAAM9I,EAAW+I,mBAAmBD,GAQpC,OANwBE,YAAYhJ,EAAU3C,IAE3C4L,MAFqB,KAEV,GAEXA,MAJqB,KAIV,IAKhB,SAASvL,EAAWjC,GAElB,OACEA,EAAKkB,WAAL,MACAlB,EAAKkB,WAAL,aACAlB,EAAKkB,WAAL,WAEOlB,EAIF,IAAIyN,IACTzN,EACAyD,OAAOa,SAASiD,MAAQ9D,OAAOa,SAASiD,KAAK9F,SAArB,cACxB8C,SAQG,IAAMmJ,EAAgB,SAAA9E,GAC3BuE,EAAavE,GAWF+E,EAAgB,SAAAN,GAC3B,IAAMO,EAAkBC,EAAUR,GAE5BS,EAAYX,EAAWY,KAAI,YAA0B,IAAvB/N,EAAsB,EAAtBA,KAClC,MAAO,CACLA,KAFsD,EAAhBgO,UAGtCC,aAAcjO,MAIZA,EAAOkO,eAAKJ,EAAWF,GAE7B,OAAI5N,EACKmO,EAAkBnO,EAAKoO,MAAMH,cAG/B,MAYII,EAAkB,SAAAhB,GAC7B,IAAMO,EAAkBC,EAAUR,GAE5BS,EAAYX,EAAWY,KAAI,YAA0B,IAAvB/N,EAAsB,EAAtBA,KAClC,MAAO,CACLA,KAFsD,EAAhBgO,UAGtCC,aAAcjO,MAIZA,EAAOkO,eAAKJ,EAAWF,GAE7B,OAAI5N,EACKA,EAAKsO,OAGP,IAWIC,EAAW,SAAAlB,GACtB,IAAMO,EAAkBR,EAAanL,EAAWoL,IAChD,GAAIJ,EAAUrD,IAAIgE,GAChB,OAAOX,EAAUpD,IAAI+D,GAGvB,IAAIY,EAAYb,EAAcC,GAQ9B,OANKY,IACHA,EAAYX,EAAUR,IAGxBJ,EAAU7C,IAAIwD,EAAiBY,GAExBA,GAUIX,EAAY,SAAAR,GACvB,IAEImB,EAFoBpB,EAAanL,EAAWoL,IAShD,MANa,gBAATmB,IACFA,EAAS,KAGXA,EAAYL,EAAkBK,K,sFCrEjB,EAnEH,CACVC,MAAO,CACLC,gBAAiB,UACjBC,MAAO,WAETC,OAAQ,CAAC,CACPC,MAAO,CAAC,UAAW,SAAU,UAAW,QAAS,eACjDtL,MAAO,CACLoL,MAAO,YAER,CACDE,MAAO,CAAC,aACRtL,MAAO,CACLuL,QAAS,KAEV,CACDD,MAAO,CAAC,MAAO,WAAY,UAC3BtL,MAAO,CACLoL,MAAO,YAER,CACDE,MAAO,CAAC,WAAY,YACpBtL,MAAO,CACLoL,MAAO,YAER,CACDE,MAAO,CAAC,SAAU,WAAY,aAC9BtL,MAAO,CACLoL,MAAO,YAER,CACDE,MAAO,CAAC,aACRtL,MAAO,CACLoL,MAAO,YAER,CACDE,MAAO,CAAC,UAAW,SAAU,SAAU,MAAO,aAAc,UAAW,UAAW,YAAa,OAAQ,YAAa,QAAS,UAAW,cAAe,YACvJtL,MAAO,CACLoL,MAAO,YAER,CACDE,MAAO,CAAC,WACRtL,MAAO,CACLwL,mBAAoB,iBAErB,CACDF,MAAO,CAAC,YACRtL,MAAO,CACLwL,mBAAoB,cAErB,CACDF,MAAO,CAAC,UACRtL,MAAO,CACLyL,UAAW,WAEZ,CACDH,MAAO,CAAC,YAAa,QACrBtL,MAAO,CACL0L,WAAY,SAEb,CACDJ,MAAO,CAAC,aACRtL,MAAO,CACLoL,MAAO,c,YC/DTjE,EAAe,CAEjBwE,MAAO,IACPC,MAAO,GAGT,SAASC,EAAgBzF,EAAKlB,EAAKG,GAYjC,OAXIH,KAAOkB,EACTK,OAAOC,eAAeN,EAAKlB,EAAK,CAC9BG,MAAOA,EACPyG,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZ5F,EAAIlB,GAAOG,EAGNe,EAGT,SAAS6F,IAeP,OAdAA,EAAWxF,OAAOyF,QAAU,SAAUjK,GACpC,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAASpE,UAAUuB,GAEvB,IAAK,IAAIpE,KAAOiH,EACV1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAC/CjD,EAAOiD,GAAOiH,EAAOjH,IAK3B,OAAOjD,IAGOmK,MAAM7M,KAAMwI,WAG9B,IAAIsE,EAAY,aAEZC,EAAsB,SAA6BC,GACjC,IAAhBA,EAAK3E,OACP2E,EAAK1P,KAAK,CACRyO,MAAO,CAAC,SACRkB,QAAS,GACTC,OAAO,IAEgB,IAAhBF,EAAK3E,QAAoC,KAApB2E,EAAK,GAAGC,UACtCD,EAAK,GAAGE,OAAQ,IAIhBC,EAAc,SAAqBpB,EAAOqB,GAC5C,IAAIC,EAAYtB,EAAM1D,OAEtB,OAAIgF,EAAY,GAAKtB,EAAMsB,EAAY,KAAOD,EACrCrB,EAGFA,EAAMnC,OAAOwD,IA+ElBE,EAAc,SAAqBjB,EAAOkB,GAC5C,IAAI5B,EAAQU,EAAMV,MAEdjN,EAAOwI,OAAOsG,OAAO,MACrBC,EAAYpB,EAAMP,OAAO4B,QAAO,SAAUC,EAAKC,GACjD,IAAIC,EAAYD,EAAWC,UACvBpN,EAAQmN,EAAWnN,MAEvB,OAAIoN,IAAcA,EAAUC,SAASP,IAIrCK,EAAW7B,MAAMvJ,SAAQ,SAAU0F,GAEjC,IAAI6F,EAAWrB,EAAS,GAAIiB,EAAIzF,GAAOzH,GAEvCkN,EAAIzF,GAAQ6F,KAPLJ,IAURjP,GAOH,OALA+O,EAAUO,KAAOrC,EAEjB8B,EAAU9B,MAAQe,EAAS,GAAIf,EAAO,CACpCC,gBAAiB,OAEZ6B,GAGT,SAASQ,EAAwBpH,EAAKqH,GACpC,IAAIxL,EAAS,GAEb,IAAK,IAAIyL,KAAKtH,EACRK,OAAOjG,UAAUqB,eAAevC,KAAK8G,EAAKsH,KAA8B,IAAxBD,EAAQE,QAAQD,KAAWzL,EAAOyL,GAAKtH,EAAIsH,IAGjG,OAAOzL,EAGT,IAAI2L,EAAyB,SAAU3J,GACrC,SAAS2J,IAKP,IAJA,IAAIC,EAAStO,KACTuO,EAAO,GACPC,EAAMhG,UAAUH,OAEbmG,KACLD,EAAKC,GAAOhG,UAAUgG,GAGxB9J,EAAUmI,MAAM7M,KAAMuO,GAEtBjC,EAAgBtM,KAAM,gBAAgB,SAAUH,GAC9C,QAAyBoK,IAArBqE,EAAOb,WAA2B5N,EAAMwM,QAAUiC,EAAOG,WAAa5O,EAAM0N,WAAae,EAAOI,aAClG,OAAOJ,EAAOb,UAGhBa,EAAOG,UAAY5O,EAAMwM,MACzBiC,EAAOI,aAAe7O,EAAM0N,SAC5B,IAAIE,EAAY5N,EAAMwM,MAAQiB,EAAYzN,EAAMwM,MAAOxM,EAAM0N,eAAYtD,EACzE,OAAOqE,EAAOb,UAAYA,KAG5BnB,EAAgBtM,KAAM,gBAAgB,SAAUkC,GAC9C,IAAIyD,EAAMzD,EAAIyD,IACVtF,EAAY6B,EAAI7B,UAChBI,EAAQyB,EAAIzB,MAIZkO,EAASjC,EAAS,GAHTuB,EAAwB/L,EAAK,CAAC,MAAO,YAAa,QAAS,SAGxC,CAC9B7B,UAAW,aACXI,WAAOwJ,EACPtE,SAAKsE,IAGHwD,EAAYa,EAAOM,aAAaN,EAAOzO,OAkB3C,YAhBkBoK,IAAdwD,IACFkB,EAAOlO,MAAQgN,EAAU9B,YAGb1B,IAAVxJ,IACFkO,EAAOlO,WAAyBwJ,IAAjB0E,EAAOlO,MAAsBiM,EAAS,GAAIiC,EAAOlO,MAAOA,GAASA,QAGtEwJ,IAARtE,IACFgJ,EAAOhJ,IAAMA,GAGXtF,IACFsO,EAAOtO,WAAa,IAAMA,GAGrBsO,KAGTrC,EAAgBtM,KAAM,oBAAoB,SAAUkC,GAClD,IAAI6J,EAAQ7J,EAAI6J,MACZmB,EAAQhL,EAAIgL,MACZG,EAAYtB,EAAM1D,OAClBoF,EAAYa,EAAOM,aAAaN,EAAOzO,OAE3C,QAAkBoK,IAAdwD,EAAJ,CAEO,GAAkB,IAAdJ,GAAgC,UAAbtB,EAAM,GAClC,OAAOmB,EAAQ,CACb2B,QAAS,qBACP5E,EACC,GAAkB,IAAdoD,IAAoBH,EAC7B,OAAOO,EAAU1B,EAAM,IAGzB,IAAI+C,EAAY5B,EAAQ,CACtB2B,QAAS,gBACP,GAEAE,EAAahD,EAAMd,KAAI,SAAU/C,GACnC,OAAOuF,EAAUvF,MAEnB,OAAOhB,OAAOyF,OAAOE,MAAM3F,OAAQ,CAAC4H,GAAWlF,OAAOmF,QAGxDzC,EAAgBtM,KAAM,iBAAiB,SAAUkC,GAC/C,IAAIyD,EAAMzD,EAAIyD,IACVtF,EAAY6B,EAAI7B,UAChBI,EAAQyB,EAAIzB,MACZuO,EAAQ9M,EAAI8M,MAIZL,EAASjC,EAAS,GAHTuB,EAAwB/L,EAAK,CAAC,MAAO,YAAa,QAAS,UAGxC,CAC9B7B,UAAW,SAAW2O,EAAMjD,MAAMvL,KAAK,KACvCyO,SAAUD,EAAM/B,QAChBxM,MAAO6N,EAAOY,iBAAiBF,GAC/BrJ,SAAKsE,IAeP,YAZcA,IAAVxJ,IACFkO,EAAOlO,WAAyBwJ,IAAjB0E,EAAOlO,MAAsBiM,EAAS,GAAIiC,EAAOlO,MAAOA,GAASA,QAGtEwJ,IAARtE,IACFgJ,EAAOhJ,IAAMA,GAGXtF,IACFsO,EAAOtO,WAAa,IAAMA,GAGrBsO,KA2BX,OAvBIjK,IAAW2J,EAAUc,UAAYzK,GACrC2J,EAAUpN,UAAYiG,OAAOsG,OAAO9I,GAAaA,EAAUzD,WAC3DoN,EAAUpN,UAAUmO,YAAcf,EAElCA,EAAUpN,UAAU6B,OAAS,WAC3B,IAAIZ,EAAMlC,KAAKH,MACXuM,EAAQlK,EAAIkK,MACZmB,EAAWrL,EAAIqL,SACf8B,EAAOnN,EAAImN,KACXJ,EAAW/M,EAAI+M,SACfxB,EAAYzN,KAAK4O,aAAa5O,KAAKH,OACnCyP,EAAUlD,EAAMyB,UAAUN,GAG9B,OAAO0B,EAAS,CACdM,OA9OgB,SAAyBA,GAU7C,IATA,IAAIC,EAAe,CAAC,IAChBC,EAAgB,CAACF,GACjBG,EAAqB,CAAC,GACtBC,EAAoB,CAACJ,EAAOlH,QAC5B0B,EAAI,EACJ6F,EAAa,EACbC,EAAc,GACdlC,EAAM,CAACkC,GAEJD,GAAc,GAAG,CACtB,MAAQ7F,EAAI2F,EAAmBE,MAAiBD,EAAkBC,IAAa,CAC7E,IAAI3C,OAAU,EACVlB,EAAQyD,EAAaI,GAErBZ,EADWS,EAAcG,GACR7F,GAgBrB,GAdqB,iBAAViF,GACTjD,EAAQ6D,EAAa,EAAI7D,EAAQ,CAAC,SAClCkB,EAAU+B,IAEVjD,EAAQoB,EAAYpB,EAAOiD,EAAM9G,MAE7B8G,EAAMc,QACR/D,EAAQoB,EAAYpB,EAAOiD,EAAMc,QAGnC7C,EAAU+B,EAAM/B,SAIK,iBAAZA,EAAX,CAUA,IAAI8C,EAAkB9C,EAAQvC,MAAMoC,GAChCkD,EAAeD,EAAgB1H,OACnCwH,EAAYvS,KAAK,CACfyO,MAAOA,EACPkB,QAAS8C,EAAgB,KAG3B,IAAK,IAAIE,EAAM,EAAGA,EAAMD,EAAcC,IACpClD,EAAoB8C,GACpBlC,EAAIrQ,KAAKuS,EAAc,IACvBA,EAAYvS,KAAK,CACfyO,MAAOA,EACPkB,QAAS8C,EAAgBE,UArB3BL,IACAJ,EAAalS,KAAKyO,GAClB0D,EAAcnS,KAAK2P,GACnByC,EAAmBpS,KAAK,GACxBqS,EAAkBrS,KAAK2P,EAAQ5E,QAuBnCuH,IACAJ,EAAaU,MACbT,EAAcS,MACdR,EAAmBQ,MACnBP,EAAkBO,MAIpB,OADAnD,EAAoB8C,GACblC,EAyKQwC,MADiBlG,IAAZqF,EAAwBlD,EAAMgE,SAASf,EAAMC,EAAS/B,GAAY,CAAC8B,IAInFhP,UAAW,uBAAyBkN,EACpC9M,WAAqBwJ,IAAdwD,EAA0BA,EAAUO,KAAO,GAClDqC,aAAcrQ,KAAKqQ,aACnBC,cAAetQ,KAAKsQ,iBAIjBjC,EAzIoB,CA0I3B,aAEa,O,qBClUfzH,EAAO9J,QAAU,kkC,oCCEjBA,EAAQC,YAAa,EACrBD,EAAQyT,qBAQR,SAA8BC,GAC5B,IAAIhP,GAAW,EAAIzD,EAAQ0S,eACvB5P,GAAQ,EAAI/C,EAAO4S,YAAYC,EAAeC,eAC9C1O,GAAM,EAAIpE,EAAO+S,UAOrB,OANA,EAAI/S,EAAOgT,kBAAiB,WAC1B,GAAI5O,EAAIjD,QAAS,CACf,IAAI8R,EAAWlQ,EAAM6E,KAAKlE,EAAUgP,GACpCtO,EAAIjD,QAAQ+R,SAAS,EAAGD,GAAY,MAErC,IACI,CACL7O,IAAKA,EACL+O,SAAU,WACJ/O,EAAIjD,SACN4B,EAAMsF,KAAK3E,EAAUgP,EAAYtO,EAAIjD,QAAQiS,cApBrD,IAAIP,EAAiB,EAAQ,QAEzB7S,EAAS,EAAQ,QAEjBC,EAAU,EAAQ,S,oCCDP,IARf,SAAiBoT,GACf,IAAIxK,EAAQ,GACZ,OAAO,SAAUyK,GAEf,YADmBnH,IAAftD,EAAMyK,KAAoBzK,EAAMyK,GAAOD,EAAGC,IACvCzK,EAAMyK,M,oCC0DF,IC5DTC,EDiBN,SAAcC,GAGb,OAFAA,EAAMA,GAAOpK,OAAOsG,OAAO,MAEpB,CAQN+D,GAAI,SAAYrJ,EAAcsJ,IAC5BF,EAAIpJ,KAAUoJ,EAAIpJ,GAAQ,KAAK5K,KAAKkU,IAUtCC,IAAK,SAAavJ,EAAcsJ,GAC3BF,EAAIpJ,IACPoJ,EAAIpJ,GAAMwJ,OAAOJ,EAAIpJ,GAAMkG,QAAQoD,KAAa,EAAG,IAYrDG,KAAM,SAAczJ,EAAc0J,IAChCN,EAAIpJ,IAAS,IAAItJ,QAAQqM,KAAI,SAAUuG,GAAWA,EAAQI,OAC1DN,EAAI,MAAQ,IAAI1S,QAAQqM,KAAI,SAAUuG,GAAWA,EAAQtJ,EAAM0J,QCvDnDC,GACDR,O,oCCDfvU,EAAQC,YAAa,EACrBD,EAAQyT,qBAAuBzT,EAAQgV,gBAAkBhV,EAAQ8T,mBAAgB,EAEjF,IAAID,EAAiB,EAAQ,QAE7B7T,EAAQ8T,cAAgBD,EAAeoB,cAEvC,IAAIC,EAAmB,EAAQ,QAE/BlV,EAAQgV,gBAAkBE,EAAiBF,gBAE3C,IAAIG,EAAwB,EAAQ,QAEpCnV,EAAQyT,qBAAuB0B,EAAsB1B,sB,oCCfrD,8PAEA,SAASjE,EAAgBzF,EAAKlB,EAAKG,GAYjC,OAXIH,KAAOkB,EACTK,OAAOC,eAAeN,EAAKlB,EAAK,CAC9BG,MAAOA,EACPyG,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZ5F,EAAIlB,GAAOG,EAGNe,EAGT,SAAS6F,IAeP,OAdAA,EAAWxF,OAAOyF,QAAU,SAAUjK,GACpC,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAASpE,UAAUuB,GAEvB,IAAK,IAAIpE,KAAOiH,EACV1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAC/CjD,EAAOiD,GAAOiH,EAAOjH,IAK3B,OAAOjD,IAGOmK,MAAM7M,KAAMwI,WAG9B,SAAS0J,EAAQ1S,EAAQ2S,GACvB,IAAIxI,EAAOzC,OAAOyC,KAAKnK,GAEvB,GAAI0H,OAAOiC,sBAAuB,CAChC,IAAIiJ,EAAUlL,OAAOiC,sBAAsB3J,GACvC2S,IAAgBC,EAAUA,EAAQ9R,QAAO,SAAU+R,GACrD,OAAOnL,OAAOE,yBAAyB5H,EAAQ6S,GAAK9F,eAEtD5C,EAAKrM,KAAKuP,MAAMlD,EAAMyI,GAGxB,OAAOzI,EAGT,SAAS2I,EAAe5P,GACtB,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAAyB,MAAhBpE,UAAUuB,GAAavB,UAAUuB,GAAK,GAE/CA,EAAI,EACNmI,EAAQhL,OAAO0F,IAAS,GAAMpK,SAAQ,SAAUmD,GAC9C2G,EAAgB5J,EAAQiD,EAAKiH,EAAOjH,OAE7BuB,OAAOqL,0BAChBrL,OAAOsL,iBAAiB9P,EAAQwE,OAAOqL,0BAA0B3F,IAEjEsF,EAAQhL,OAAO0F,IAASpK,SAAQ,SAAUmD,GACxCuB,OAAOC,eAAezE,EAAQiD,EAAKuB,OAAOE,yBAAyBwF,EAAQjH,OAKjF,OAAOjD,EAkBT,SAAS+P,EAAyB7F,EAAQ8F,GACxC,GAAc,MAAV9F,EAAgB,MAAO,GAE3B,IAEIjH,EAAKoE,EAFLrH,EAlBN,SAAuCkK,EAAQ8F,GAC7C,GAAc,MAAV9F,EAAgB,MAAO,GAC3B,IAEIjH,EAAKoE,EAFLrH,EAAS,GACTiQ,EAAazL,OAAOyC,KAAKiD,GAG7B,IAAK7C,EAAI,EAAGA,EAAI4I,EAAWtK,OAAQ0B,IACjCpE,EAAMgN,EAAW5I,GACb2I,EAAStE,QAAQzI,IAAQ,IAC7BjD,EAAOiD,GAAOiH,EAAOjH,IAGvB,OAAOjD,EAMMkQ,CAA8BhG,EAAQ8F,GAInD,GAAIxL,OAAOiC,sBAAuB,CAChC,IAAI0J,EAAmB3L,OAAOiC,sBAAsByD,GAEpD,IAAK7C,EAAI,EAAGA,EAAI8I,EAAiBxK,OAAQ0B,IACvCpE,EAAMkN,EAAiB9I,GACnB2I,EAAStE,QAAQzI,IAAQ,GACxBuB,OAAOjG,UAAU6R,qBAAqB/S,KAAK6M,EAAQjH,KACxDjD,EAAOiD,GAAOiH,EAAOjH,IAIzB,OAAOjD,EAGT,IAIIqQ,EAA0B,IAAMC,cAAc,IAE9CC,EAAoB,SAA2BvO,GACjD,OAAO,SAAU7E,GACf,IAAIqT,EAAgBC,EAAiBtT,EAAMuT,YAC3C,OAAoB,IAAM5P,cAAckB,EAAWgI,EAAS,GAAI7M,EAAO,CACrEuT,WAAYF,OAKdC,EAAmB,SAA0BC,GAC/C,IAAIC,EAAoB,IAAM3C,WAAWqC,GACrCG,EAAgBG,EAMpB,OAJID,IACFF,EAnBoB,mBAmBOE,EAAcA,EAAWC,GAAqBf,EAAeA,EAAe,GAAIe,GAAoBD,IAG1HF,GAGLI,EAAc,SAAqBzT,GACrC,IAAIqT,EAAgBC,EAAiBtT,EAAMuT,YAC3C,OAAoB,IAAM5P,cAAcuP,EAAWQ,SAAU,CAC3DzN,MAAOoN,GACNrT,EAAMoP,WAIPuE,EAAW,CACbC,WAAY,OACZC,QAAS,SAAiBpV,GACxB,IAAI2Q,EAAW3Q,EAAK2Q,SACpB,OAAoB,IAAMzL,cAAc,IAAMmQ,SAAU,GAAI1E,KAG5D2E,EAAgC,IAAMvO,YAAW,SAAUxF,EAAOqC,GACpE,IAAI2R,EAAiBhU,EAAMuT,WACvBU,EAAUjU,EAAMiU,QAChBC,EAAelU,EAAMkU,aACrBC,EAAanU,EAAMmU,WACnBC,EAAMxB,EAAyB5S,EAAO,CAAC,aAAc,UAAW,eAAgB,eAEhFuT,EAAaD,EAAiBU,GAC9B3L,EAAO4L,EACPpP,EAAY0O,EAAW,GAAGxJ,OAAOoK,EAAY,KAAKpK,OAAO1B,KAAUkL,EAAWlL,IAASsL,EAAStL,IAAS6L,EAE7G,OAAIF,EACkB,IAAMrQ,cAAckB,EAAW4N,EAAeA,EAAe,CAC/EpQ,IAAKA,GACJ+R,GAAM,GAAI,CACXb,WAAYS,KAII,IAAMrQ,cAAckB,EAAW4N,EAAe,CAChEpQ,IAAKA,GACJ+R,OAIL,SAASzQ,EAAc0E,EAAMrI,GAC3B,IAAI0O,EAAO/F,UACPsL,EAAUjU,GAASA,EAAMiU,QAE7B,GAAoB,iBAAT5L,GAAqB4L,EAAS,CACvC,IAAII,EAAa3F,EAAKlG,OAClB8L,EAAwB,IAAIC,MAAMF,GACtCC,EAAsB,GAAKP,EAC3B,IAAIS,EAAW,GAEf,IAAK,IAAI1O,KAAO9F,EACVyC,eAAevC,KAAKF,EAAO8F,KAC7B0O,EAAS1O,GAAO9F,EAAM8F,IAI1B0O,EAASN,aAAe7L,EACxBmM,EAAuB,QAAoB,iBAATnM,EAAoBA,EAAO4L,EAC7DK,EAAsB,GAAKE,EAE3B,IAAK,IAAItK,EAAI,EAAGA,EAAImK,EAAYnK,IAC9BoK,EAAsBpK,GAAKwE,EAAKxE,GAGlC,OAAO,IAAMvG,cAAcqJ,MAAM,KAAMsH,GAGzC,OAAO,IAAM3Q,cAAcqJ,MAAM,KAAM0B,GA7BzCqF,EAAiB/L,YAAc,oB,oCCvK/B,SAASyM,EAAgBC,GACvB,OAAOA,GAAoB,iBAAPA,GAAmB,YAAaA,EAAKA,EAAY,QAAIA,EAG3E,IAAIC,EAAQ,EAAQ,QAEhBC,EAAiBH,EAAgBE,GAEjCE,EAAeJ,EAAgB,EAAQ,SAE3C,SAAShI,EAAgBzF,EAAKlB,EAAKG,GAYjC,OAXIH,KAAOkB,EACTK,OAAOC,eAAeN,EAAKlB,EAAK,CAC9BG,MAAOA,EACPyG,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZ5F,EAAIlB,GAAOG,EAGNe,EAST,IAAI8N,IAAiC,oBAAXhU,SAA0BA,OAAOiU,WAAYjU,OAAOiU,SAASpR,eAmGvFoD,EAAO9J,QAjGP,SAAwB+X,EAAoBC,EAA2BC,GACrE,GAAkC,mBAAvBF,EACT,MAAM,IAAIG,MAAM,iDAGlB,GAAyC,mBAA9BF,EACT,MAAM,IAAIE,MAAM,wDAGlB,QAAgC,IAArBD,GAAgE,mBAArBA,EACpD,MAAM,IAAIC,MAAM,mEAOlB,OAAO,SAAcC,GACnB,GAAgC,mBAArBA,EACT,MAAM,IAAID,MAAM,sDAGlB,IACInU,EADAqU,EAAmB,GAGvB,SAASC,IACPtU,EAAQgU,EAAmBK,EAAiBjK,KAAI,SAAUnJ,GACxD,OAAOA,EAASjC,UAGduV,EAAWT,UACbG,EAA0BjU,GACjBkU,IACTlU,EAAQkU,EAAiBlU,IAI7B,IAAIuU,EAA0B,SAAUC,GA7C5C,IAAwBC,EAAUC,EAgD5B,SAASH,IACP,OAAOC,EAAWxI,MAAM7M,KAAMwI,YAAcxI,KAjDlBuV,EA8CDF,GA9CTC,EA8CHF,GA7CVnU,UAAYiG,OAAOsG,OAAO+H,EAAWtU,WAC9CqU,EAASrU,UAAUmO,YAAckG,EACjCA,EAASnG,UAAYoG,EAmDjBH,EAAWI,KAAO,WAChB,OAAO3U,GAGTuU,EAAWK,OAAS,WAClB,GAAIL,EAAWT,UACb,MAAM,IAAIK,MAAM,oFAGlB,IAAIU,EAAgB7U,EAGpB,OAFAA,OAAQoJ,EACRiL,EAAmB,GACZQ,GAGT,IAAI1U,EAASoU,EAAWnU,UAyBxB,OAvBAD,EAAO2U,sBAAwB,SAA+BC,GAC5D,OAAQlB,EAAakB,EAAW5V,KAAKH,QAGvCmB,EAAO6U,mBAAqB,WAC1BX,EAAiB5X,KAAK0C,MACtBmV,KAGFnU,EAAOE,mBAAqB,WAC1BiU,KAGFnU,EAAOW,qBAAuB,WAC5B,IAAImU,EAAQZ,EAAiB9G,QAAQpO,MACrCkV,EAAiBxD,OAAOoE,EAAO,GAC/BX,KAGFnU,EAAO8B,OAAS,WACd,OAAO2R,EAAejR,cAAcyR,EAAkBjV,KAAKH,QAGtDuV,EAjDqB,CAkD5BZ,EAAM9P,WAMR,OAJA4H,EAAgB8I,EAAY,cAAe,cA5E7C,SAAwBH,GACtB,OAAOA,EAAiBpN,aAAeoN,EAAiB7M,MAAQ,YA2EL2N,CAAed,GAAoB,KAE9F3I,EAAgB8I,EAAY,YAAaT,GAElCS,K,qBCjHXxO,EAAO9J,QAfP,SAAuC8P,EAAQ8F,GAC7C,GAAc,MAAV9F,EAAgB,MAAO,GAC3B,IAEIjH,EAAKoE,EAFLrH,EAAS,GACTiQ,EAAazL,OAAOyC,KAAKiD,GAG7B,IAAK7C,EAAI,EAAGA,EAAI4I,EAAWtK,OAAQ0B,IACjCpE,EAAMgN,EAAW5I,GACb2I,EAAStE,QAAQzI,IAAQ,IAC7BjD,EAAOiD,GAAOiH,EAAOjH,IAGvB,OAAOjD,I,qBCZT5F,EAAQkZ,SAAW,SAAAtR,GAAS,OAAIA,I,oCCAhC,4IAAIgI,EAAWxF,OAAOyF,QAAU,SAAUjK,GAAU,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CAAE,IAAI6C,EAASpE,UAAUuB,GAAI,IAAK,IAAIpE,KAAOiH,EAAc1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAAQjD,EAAOiD,GAAOiH,EAAOjH,IAAY,OAAOjD,GAEnPuT,EAAc,SAAqBrJ,GACrC,IAAIsJ,EAAmBtJ,EAAOpL,SAC1B2U,EAASD,EAAiBC,OAC1BC,EAAOF,EAAiBE,KACxB3R,EAAOyR,EAAiBzR,KACxB4R,EAASH,EAAiBG,OAC1BC,EAAWJ,EAAiBI,SAC5BC,EAAOL,EAAiBK,KACxBC,EAAWN,EAAiBM,SAC5BC,EAAOP,EAAiBO,KACxBhV,EAAWmL,EAAOpL,SAASC,UAG1BA,GAAYgD,GAAQkQ,IAEvBlT,EADU,IAAIkJ,IAAIlG,GACHhD,UAGjB,MAAO,CACLA,SAAU8C,UAAUmS,UAAUjV,IAC9B0U,OAAQA,EACRC,KAAMA,EACN3R,KAAMA,EACN4R,OAAQA,EACRC,SAAUA,EACVC,KAAMA,EACNC,SAAUA,EACVC,KAAMA,EACN5V,MAAO+L,EAAO+J,QAAQ9V,MACtB8E,IAAKiH,EAAO+J,QAAQ9V,OAAS+L,EAAO+J,QAAQ9V,MAAM8E,KAAO,YAIzDiR,EAAgB,SAAuBhK,EAAQtH,GACjD,IAAIuR,EAAY,GACZrV,EAAWyU,EAAYrJ,GACvBkK,GAAgB,EAChBC,EAAoB,aAExB,MAAO,CACL,eACE,OAAOvV,GAGT,oBACE,OAAOsV,GAGTE,sBAAuB,WACrBF,GAAgB,EAChBC,KAEFE,OAAQ,SAAgBC,GACtBL,EAAUvZ,KAAK4Z,GAEf,IAAIC,EAAmB,WACrB3V,EAAWyU,EAAYrJ,GACvBsK,EAAS,CAAE1V,SAAUA,EAAU4V,OAAQ,SAKzC,OAFAxK,EAAOyK,iBAAiB,WAAYF,GAE7B,WACLvK,EAAO0K,oBAAoB,WAAYH,GACvCN,EAAYA,EAAUvW,QAAO,SAAU6Q,GACrC,OAAOA,IAAO+F,OAIpB3Z,SAAU,SAAkB8D,GAC1B,IAAI/C,EAAOkK,UAAUH,OAAS,QAAsB4B,IAAjBzB,UAAU,GAAmBA,UAAU,GAAK,GAC3E3H,EAAQvC,EAAKuC,MACb0W,EAAejZ,EAAKjB,QACpBA,OAA2B4M,IAAjBsN,GAAqCA,EAEnD,GAAkB,iBAAPlW,EACTuL,EAAO+J,QAAQa,GAAGnW,OACb,CACLR,EAAQ6L,EAAS,GAAI7L,EAAO,CAAE8E,IAAK8R,KAAKC,MAAQ,KAEhD,IACMZ,GAAiBzZ,EACnBuP,EAAO+J,QAAQgB,aAAa9W,EAAO,KAAMQ,GAEzCuL,EAAO+J,QAAQiB,UAAU/W,EAAO,KAAMQ,GAExC,MAAOwC,GACP+I,EAAOpL,SAASnE,EAAU,UAAY,UAAUgE,IAIpDG,EAAWyU,EAAYrJ,GACvBkK,GAAgB,EAChB,IAAIe,EAAa,IAAIC,SAAQ,SAAUC,GACrC,OAAOhB,EAAoBgB,KAK7B,OAHAlB,EAAUrU,SAAQ,SAAU0U,GAC1B,OAAOA,EAAS,CAAE1V,SAAUA,EAAU4V,OAAQ,YAEzCS,KAOTG,EAAqB,WACvB,IAAIC,EAAczP,UAAUH,OAAS,QAAsB4B,IAAjBzB,UAAU,GAAmBA,UAAU,GAAK,IAElF0P,EAAcD,EAAY7J,QAAQ,KAClC+J,EAAkB,CACpB1W,SAAUyW,GAAe,EAAID,EAAYG,OAAO,EAAGF,GAAeD,EAClE9B,OAAQ+B,GAAe,EAAID,EAAYG,OAAOF,GAAe,IAE3DpC,EAAQ,EACRuC,EAAQ,CAACF,GACTG,EAAS,CAAC,MAEd,MAAO,CACL,eACE,OAAOD,EAAMvC,IAEfuB,iBAAkB,SAA0BjP,EAAM+I,KAClDmG,oBAAqB,SAA6BlP,EAAM+I,KAExDwF,QAAS,CACP,cACE,OAAO0B,GAET,YACE,OAAOvC,GAET,YACE,OAAOwC,EAAOxC,IAEhB8B,UAAW,SAAmB/W,EAAO0X,EAAGC,GACtC,IAAIC,EAAaD,EAAI9N,MAAM,KACvBjJ,EAAWgX,EAAW,GACtBC,EAAcD,EAAW,GACzBtC,OAAyBlM,IAAhByO,EAA4B,GAAKA,EAE9C5C,IACAuC,EAAM/a,KAAK,CAAEmE,SAAUA,EAAU0U,OAAQA,EAAO9N,OAAS,IAAM8N,EAASA,IACxEmC,EAAOhb,KAAKuD,IAEd8W,aAAc,SAAsB9W,EAAO0X,EAAGC,GAC5C,IAAIG,EAAcH,EAAI9N,MAAM,KACxBjJ,EAAWkX,EAAY,GACvBC,EAAeD,EAAY,GAC3BxC,OAA0BlM,IAAjB2O,EAA6B,GAAKA,EAE/CP,EAAMvC,GAAS,CAAErU,SAAUA,EAAU0U,OAAQA,GAC7CmC,EAAOxC,GAASjV,GAElB2W,GAAI,SAAYnW,GACd,IAAIwX,EAAW/C,EAAQzU,EAEnBwX,EAAW,GAAKA,EAAWP,EAAOjQ,OAAS,IAI/CyN,EAAQ+C,OASZlE,IAAiC,oBAAXhU,SAA0BA,OAAOiU,WAAYjU,OAAOiU,SAASpR,eAKnFsV,EAAgBlC,EAHXjC,EAAYhU,OAASqX,KAI1Bza,EAAWub,EAAcvb,U,oCClL7B,gBACIwb,EAAkB,45HAElBjD,EAAQ,aAAQ,SAAUkD,GAC5B,OAAOD,EAAgBE,KAAKD,IAAgC,MAAvBA,EAAKE,WAAW,IAE3B,MAAvBF,EAAKE,WAAW,IAEhBF,EAAKE,WAAW,GAAK,MAIX,O,mBCZftS,EAAO9J,QAAU,0/C,kCCEjB,IAAIF,EAAyBC,EAAQ,QAEjCsc,EAAUtc,EAAQ,QAElBuc,EAAcxc,EAAuBC,EAAQ,SAEjDC,EAAQuc,cAAgB,SAAUd,EAAGe,QACb,IAAlBA,IACFA,EAAgB,KAGlB,EAAIF,EAAY5b,SAASmD,OAAQ2Y,GAAe,SAAU7U,IACxD,EAAI0U,EAAQ5b,UAAUkH,Q,kCCd1B,6HAEM8U,EAAwBvG,wBAA9B,IAEawG,EAAc,SAAAC,GACzB,IAAMC,EAAehJ,qBAArB,GACA,OAAO+I,GAAP,GAGWE,EAAmB,SAAC,GAAD,IAAGC,EAAH,aAAe3K,EAAf,kBAC9B,kBACEsK,EADF,SAEE,CAAEzT,MAAO8T,GAHmB,K,mBCLhChT,EAAO9J,QAJP,WACE,MAAM,IAAI+c,UAAU,0I,kCCDtB,kDACe,SAASC,EAA4BC,EAAGC,GACrD,GAAKD,EAAL,CACA,GAAiB,iBAANA,EAAgB,OAAO,YAAiBA,EAAGC,GACtD,IAAIC,EAAI/S,OAAOjG,UAAUiZ,SAASna,KAAKga,GAAGnb,MAAM,GAAI,GAEpD,MADU,WAANqb,GAAkBF,EAAE3K,cAAa6K,EAAIF,EAAE3K,YAAYhH,MAC7C,QAAN6R,GAAqB,QAANA,EAAoB7F,MAAM+F,KAAKJ,GACxC,cAANE,GAAqB,2CAA2ChB,KAAKgB,GAAW,YAAiBF,EAAGC,QAAxG,K,kCCLF,IAAIxT,EAA4B,mBAAX4T,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUxT,GAC5F,cAAcA,GACZ,SAAUA,GACZ,OAAOA,GAAyB,mBAAXuT,QAAyBvT,EAAIuI,cAAgBgL,QAAUvT,IAAQuT,OAAOnZ,UAAY,gBAAkB4F,GAG3H,SAASyT,EAAgBxY,EAAUyY,GACjC,KAAMzY,aAAoByY,GACxB,MAAM,IAAIV,UAAU,qCAIxB,SAASW,EAA2BC,EAAM1a,GACxC,IAAK0a,EACH,MAAM,IAAIC,eAAe,6DAG3B,OAAO3a,GAAyB,iBAATA,GAAqC,mBAATA,EAA8B0a,EAAP1a,EAG5E,SAAS4a,EAAUrF,EAAUC,GAC3B,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAIsE,UAAU,kEAAoEtE,GAG1FD,EAASrU,UAAYiG,OAAOsG,OAAO+H,GAAcA,EAAWtU,UAAW,CACrEmO,YAAa,CACXtJ,MAAOwP,EACP/I,YAAY,EACZE,UAAU,EACVD,cAAc,KAGd+I,IAAYrO,OAAO0T,eAAiB1T,OAAO0T,eAAetF,EAAUC,GAAcD,EAASnG,UAAYoG,GAG7G,IAAIf,EAAQ,EAAQ,QAEhBqG,EAAY,EAAQ,QAEpBC,EAAmB,GACnBC,EAAqB,GAYzB,SAASC,EAAKC,GACZ,IAAIC,EAAUD,IACVpa,EAAQ,CACVsa,SAAS,EACTC,OAAQ,KACRC,MAAO,MAWT,OATAxa,EAAMqa,QAAUA,EAAQI,MAAK,SAAUF,GAGrC,OAFAva,EAAMsa,SAAU,EAChBta,EAAMua,OAASA,EACRA,KACNG,OAAM,SAAUC,GAGjB,MAFA3a,EAAMsa,SAAU,EAChBta,EAAMwa,MAAQG,EACRA,KAED3a,EAGT,SAAS4a,EAAQ5U,GACf,IAAIhG,EAAQ,CACVsa,SAAS,EACTC,OAAQ,GACRC,MAAO,MAELK,EAAW,GAEf,IACExU,OAAOyC,KAAK9C,GAAKrE,SAAQ,SAAUmD,GACjC,IAAIgW,EAASX,EAAKnU,EAAIlB,IAEjBgW,EAAOR,QAIVta,EAAMsa,SAAU,GAHhBta,EAAMua,OAAOzV,GAAOgW,EAAOP,OAC3Bva,EAAMwa,MAAQM,EAAON,OAKvBK,EAASpe,KAAKqe,EAAOT,SACrBS,EAAOT,QAAQI,MAAK,SAAUvD,GAC5BlX,EAAMua,OAAOzV,GAAOoS,KACnBwD,OAAM,SAAUC,GACjB3a,EAAMwa,MAAQG,QAGlB,MAAOA,GACP3a,EAAMwa,MAAQG,EAUhB,OAPA3a,EAAMqa,QAAUpD,QAAQxG,IAAIoK,GAAUJ,MAAK,SAAUvD,GAEnD,OADAlX,EAAMsa,SAAU,EACTpD,KACNwD,OAAM,SAAUC,GAEjB,MADA3a,EAAMsa,SAAU,EACVK,KAED3a,EAOT,SAASiC,EAAOsY,EAAQvb,GACtB,OAAO2U,EAAMhR,eALEqD,EAKoBuU,IAJrBvU,EAAI9J,WAAa8J,EAAIrJ,QAAUqJ,EAIDhH,GAL9C,IAAiBgH,EAQjB,SAAS+U,EAAwBC,EAAQvW,GACvC,IAAIwW,EAAQC,EAEZ,IAAKzW,EAAQ6V,QACX,MAAM,IAAInG,MAAM,iDAGlB,IAAIgH,EAAO9U,OAAOyF,OAAO,CACvBsO,OAAQ,KACRE,QAAS,KACTc,MAAO,IACPC,QAAS,KACTpZ,OAAQA,EACRqZ,QAAS,KACTC,QAAS,MACR9W,GACCyS,EAAM,KAEV,SAASsE,IAKP,OAJKtE,IACHA,EAAM8D,EAAOG,EAAKf,SAGblD,EAAImD,QAab,OAVAJ,EAAiBxd,KAAK+e,GAEM,mBAAjBL,EAAKG,SACdpB,EAAmBzd,MAAK,WACtB,GA3GkBgf,EA2GCN,EAAKG,QA1GsE,WAAlC3V,EAAQ,MAIjE8V,IAAeC,OAAM,SAAUC,GACpC,YAA2B,IAAbA,QAAqE,IAAlC,IAAoBA,MAsGjE,OAAOH,IA5Gf,IAAwBC,KAiHfP,EAAQD,EAAS,SAAUlc,GAGhC,SAAS6c,EAAkB5c,GACzBya,EAAgBta,KAAMyc,GAEtB,IAAI3c,EAAQ0a,EAA2Bxa,KAAMJ,EAAiBG,KAAKC,KAAMH,IAsBzE,OApBAC,EAAM4c,MAAQ,WACZ5c,EAAM6c,SAAS,CACbtB,MAAO,KACPF,SAAS,EACTyB,UAAU,IAGZ7E,EAAM8D,EAAOG,EAAKf,QAElBnb,EAAM+c,eAGRR,IACAvc,EAAMe,MAAQ,CACZwa,MAAOtD,EAAIsD,MACXyB,WAAW,EACXF,UAAU,EACVzB,QAASpD,EAAIoD,QACbC,OAAQrD,EAAIqD,QAEPtb,EAgGT,OA3HA6a,EAAU8B,EAAmB7c,GA8B7B6c,EAAkBM,QAAU,WAC1B,OAAOV,KAGTI,EAAkBxb,UAAU4U,mBAAqB,WAC/C7V,KAAKgd,UAAW,EAEhBhd,KAAK6c,eAGPJ,EAAkBxb,UAAU4b,YAAc,WACxC,IAAIza,EAASpC,KAQb,GANIA,KAAKid,QAAQC,UAAY9I,MAAM+I,QAAQnB,EAAKI,UAC9CJ,EAAKI,QAAQ5Z,SAAQ,SAAU4a,GAC7Bhb,EAAO6a,QAAQC,SAASG,OAAOD,MAI9BrF,EAAIoD,QAAT,CAI0B,iBAAfa,EAAKC,QACK,IAAfD,EAAKC,MACPjc,KAAK2c,SAAS,CACZG,WAAW,IAGb9c,KAAKsd,OAASC,YAAW,WACvBnb,EAAOua,SAAS,CACdG,WAAW,MAEZd,EAAKC,QAIgB,iBAAjBD,EAAKE,UACdlc,KAAKwd,SAAWD,YAAW,WACzBnb,EAAOua,SAAS,CACdC,UAAU,MAEXZ,EAAKE,UAGV,IAAIuB,EAAS,WACNrb,EAAO4a,WAIZ5a,EAAOua,SAAS,CACdtB,MAAOtD,EAAIsD,MACXD,OAAQrD,EAAIqD,OACZD,QAASpD,EAAIoD,UAGf/Y,EAAOsb,mBAGT3F,EAAImD,QAAQI,MAAK,WACfmC,OACClC,OAAM,SAAUC,GACjBiC,SAIJhB,EAAkBxb,UAAUU,qBAAuB,WACjD3B,KAAKgd,UAAW,EAEhBhd,KAAK0d,kBAGPjB,EAAkBxb,UAAUyc,eAAiB,WAC3CC,aAAa3d,KAAKsd,QAClBK,aAAa3d,KAAKwd,WAGpBf,EAAkBxb,UAAU6B,OAAS,WACnC,OAAI9C,KAAKa,MAAMsa,SAAWnb,KAAKa,MAAMwa,MAC5B7G,EAAMhR,cAAcwY,EAAKb,QAAS,CACvCyC,UAAW5d,KAAKa,MAAMsa,QACtB2B,UAAW9c,KAAKa,MAAMic,UACtBF,SAAU5c,KAAKa,MAAM+b,SACrBvB,MAAOrb,KAAKa,MAAMwa,MAClBqB,MAAO1c,KAAK0c,QAEL1c,KAAKa,MAAMua,OACbY,EAAKlZ,OAAO9C,KAAKa,MAAMua,OAAQpb,KAAKH,OAEpC,MAIJ4c,EA5He,CA6HtBjI,EAAM9P,WAAYoX,EAAOnU,aAAe,CACxCuV,SAAUrC,EAAUgD,MAAM,CACxBR,OAAQxC,EAAUjW,KAAKC,cAExBkX,EAGL,SAAS+B,EAAS9B,GAChB,OAAOJ,EAAwBZ,EAAMgB,GAWvC8B,EAAS1T,IART,SAAqB4R,GACnB,GAA2B,mBAAhBA,EAAKlZ,OACd,MAAM,IAAIkS,MAAM,2DAGlB,OAAO4G,EAAwBH,EAASO,IAK1C,IAAI+B,EAAU,SAAUC,GAGtB,SAASD,IAGP,OAFAzD,EAAgBta,KAAM+d,GAEfvD,EAA2Bxa,KAAMge,EAAkBnR,MAAM7M,KAAMwI,YAexE,OApBAmS,EAAUoD,EAASC,GAQnBD,EAAQ9c,UAAUgd,gBAAkB,WAClC,MAAO,CACLf,SAAU,CACRG,OAAQrd,KAAKH,MAAMwd,UAKzBU,EAAQ9c,UAAU6B,OAAS,WACzB,OAAO0R,EAAM0J,SAASC,KAAKne,KAAKH,MAAMoP,WAGjC8O,EArBK,CAsBZvJ,EAAM9P,WAYR,SAAS0Z,EAAkBC,GAGzB,IAFA,IAAI3C,EAAW,GAER2C,EAAahW,QAAQ,CAC1B,IAAIgU,EAAOgC,EAAanO,MACxBwL,EAASpe,KAAK+e,KAGhB,OAAOvE,QAAQxG,IAAIoK,GAAUJ,MAAK,WAChC,GAAI+C,EAAahW,OACf,OAAO+V,EAAkBC,MApB/BN,EAAQpZ,UAAY,CAClB0Y,OAAQxC,EAAUjW,KAAKC,YAEzBkZ,EAAQtW,kBAAoB,CAC1ByV,SAAUrC,EAAUgD,MAAM,CACxBR,OAAQxC,EAAUjW,KAAKC,aACtBA,YAELiZ,EAASC,QAAUA,EAiBnBD,EAASQ,WAAa,WACpB,OAAO,IAAIxG,SAAQ,SAAU5Y,EAASqf,GACpCH,EAAkBtD,GAAkBQ,KAAKpc,EAASqf,OAItDT,EAASU,aAAe,WACtB,OAAO,IAAI1G,SAAQ,SAAU5Y,EAASqf,GAEpCH,EAAkBrD,GAAoBO,KAAKpc,EAASA,OAIxD0H,EAAO9J,QAAUghB,G,mBC1WjBlX,EAAO9J,QAJP,SAA0B2hB,GACxB,GAAsB,oBAAXrE,QAA0BA,OAAOC,YAAYnT,OAAOuX,GAAO,OAAOrK,MAAM+F,KAAKsE,K,kCCC1F,IAAIC,EAA0B,EAAQ,QAElC9hB,EAAyB,EAAQ,QAErCE,EAAQC,YAAa,EACrBD,EAAQiV,cAAgBjV,EAAQ8T,mBAAgB,EAEhD,IAAIjT,EAA0Bf,EAAuB,EAAQ,SAEzDgB,EAAkBhB,EAAuB,EAAQ,SAEjD4X,EAAQkK,EAAwB,EAAQ,SAExC7gB,EAAajB,EAAuB,EAAQ,SAE5C+hB,EAAkB,EAAQ,QAE1B/N,EAA6B4D,EAAMxB,cAAc,IAAI2L,EAAgBlZ,gBACzE3I,EAAQ8T,cAAgBA,EACxBA,EAAc/I,YAAc,sBAE5B,IAAIkK,EAA6B,SAAUnS,GAGzC,SAASmS,IAGP,IAFA,IAAIjS,EAEK8e,EAAOpW,UAAUH,OAAQkG,EAAO,IAAI6F,MAAMwK,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/EtQ,EAAKsQ,GAAQrW,UAAUqW,GAuCzB,OApCA/e,EAAQF,EAAiBG,KAAK8M,MAAMjN,EAAkB,CAACI,MAAM4J,OAAO2E,KAAUvO,MACxE8e,cAAgB,IAAIH,EAAgBlZ,eAE1C3F,EAAMif,eAAiB,WACrB,IAAIpZ,EAAM7F,EAAMD,MAAM2B,SAASmE,IAE3BA,GACF7F,EAAMgf,cAAc3Y,KAAKrG,EAAMD,MAAM2B,SAAUmE,EAAKhF,OAAOqe,UAI/Dlf,EAAMmf,aAAe,SAAUlO,EAAU5P,GACnCrB,EAAMof,mBAAmB/d,EAAWrB,EAAMD,QAC5Cc,OAAOqQ,SAAS,EAAGD,IAIvBjR,EAAMqf,aAAe,SAAU/I,EAAMjV,GACnC,IAAIie,EAAOxK,SAASyK,eAAejJ,EAAKkJ,UAAU,IAE9CF,GAAQtf,EAAMof,mBAAmB/d,EAAWrB,EAAMD,QACpDuf,EAAKG,kBAITzf,EAAMof,mBAAqB,SAAUM,EAAiBC,GACpD,IAAIP,EAAqBpf,EAAMD,MAAMqf,mBAErC,OAAKA,GAKEA,EAAmBnf,MAAK,EAAIpC,EAAwBH,SAASsC,GAAQ0f,EAAiBC,IAGxF3f,GA7CT,EAAIlC,EAAgBJ,SAASuU,EAAenS,GAgD5C,IAAIoB,EAAS+Q,EAAc9Q,UAwD3B,OAtDAD,EAAOU,kBAAoB,WAEzB,IAAIge,EADJ/e,OAAO0W,iBAAiB,SAAUrX,KAAK+e,gBAEvC,IAAIY,EAAuB3f,KAAKH,MAAM2B,SAClCmE,EAAMga,EAAqBha,IAC3ByQ,EAAOuJ,EAAqBvJ,KAE5BzQ,IACF+Z,EAAiB1f,KAAK8e,cAAcpZ,KAAK1F,KAAKH,MAAM2B,SAAUmE,IAG5D+Z,EACF1f,KAAKif,aAAaS,OAAgBzV,GACzBmM,GACTpW,KAAKmf,aAAazI,UAAUN,QAAOnM,IAIvCjJ,EAAOW,qBAAuB,WAC5BhB,OAAO2W,oBAAoB,SAAUtX,KAAK+e,iBAG5C/d,EAAOE,mBAAqB,SAA4BC,GACtD,IAGIue,EAHAE,EAAwB5f,KAAKH,MAAM2B,SACnC4U,EAAOwJ,EAAsBxJ,KAC7BzQ,EAAMia,EAAsBja,IAG5BA,IACF+Z,EAAiB1f,KAAK8e,cAAcpZ,KAAK1F,KAAKH,MAAM2B,SAAUmE,IAY5DyQ,EACFpW,KAAKmf,aAAazI,UAAUN,GAAOjV,GAEnCnB,KAAKif,aAAaS,EAAgBve,IAItCH,EAAO8B,OAAS,WACd,OAAoB0R,EAAMhR,cAAcoN,EAAc2C,SAAU,CAC9DzN,MAAO9F,KAAK8e,eACX9e,KAAKH,MAAMoP,WAGT8C,EAzGwB,CA0G/ByC,EAAM9P,WAER5H,EAAQiV,cAAgBA,EACxBA,EAAcpN,UAAY,CACxBua,mBAAoBrhB,EAAWL,QAAQoH,KACvCqK,SAAUpR,EAAWL,QAAQqiB,QAAQhb,WACrCrD,SAAU3D,EAAWL,QAAQgC,OAAOqF,a,kCCvItC,kEAAO,IAAMib,EAA6B,YAKzB,IAJAnf,OAAOof,QACpB,0EAIApf,OAAOa,SAASwe,W,mBCLpBpZ,EAAO9J,QAAU,SAAsBmjB,EAAMC,EAAMvX,EAASwX,GAC1D,IAAIC,EAAMzX,EAAUA,EAAQ5I,KAAKogB,EAAgBF,EAAMC,QAAQ,EAE/D,QAAY,IAARE,EACF,QAASA,EAGX,GAAIH,IAASC,EACX,OAAO,EAGT,GAAoB,iBAATD,IAAsBA,GAAwB,iBAATC,IAAsBA,EACpE,OAAO,EAGT,IAAIG,EAAQnZ,OAAOyC,KAAKsW,GACpBK,EAAQpZ,OAAOyC,KAAKuW,GAExB,GAAIG,EAAMhY,SAAWiY,EAAMjY,OACzB,OAAO,EAKT,IAFA,IAAIkY,EAAkBrZ,OAAOjG,UAAUqB,eAAevB,KAAKmf,GAElDM,EAAM,EAAGA,EAAMH,EAAMhY,OAAQmY,IAAO,CAC3C,IAAI7a,EAAM0a,EAAMG,GAEhB,IAAKD,EAAgB5a,GACnB,OAAO,EAGT,IAAI8a,EAASR,EAAKta,GACd+a,EAASR,EAAKva,GAGlB,IAAY,KAFZya,EAAMzX,EAAUA,EAAQ5I,KAAKogB,EAAgBM,EAAQC,EAAQ/a,QAAO,SAEvC,IAARya,GAAkBK,IAAWC,EAChD,OAAO,EAIX,OAAO,I,osBClCHC,E,kGACJ7d,OAAA,WACE,IAAMjD,EAAK,OACNG,KAAKH,OADC,IAET2L,OAAO,EAAD,KACDD,YAAgBvL,KAAKH,MAAM2B,SAASC,WACpCzB,KAAKH,MAAM+gB,cAAcC,KAAKC,YAAYC,UAE/CC,YAAahhB,KAAKH,MAAMihB,cAQpBG,EALuBC,oBAAU,2BAA4B,CACjErhB,MAAOG,KAAKH,MACZob,OAAQkG,iBAZH,IAiBL3d,wBAAcxD,KAAKH,MAAM+gB,cAAc9X,UAA1B,OACRjJ,GADQ,IAEX8F,IAAK3F,KAAKH,MAAM3C,MAAQ8C,KAAKH,MAAM+gB,cAAcQ,KAAKlkB,QAY1D,OAToBgkB,oBAAU,kBAE5B,CAAErB,QAASoB,EAAaphB,SACxBohB,GACA,YACE,MAAO,CAAEpB,QADK,EAAblE,OACyB9b,YAE5BqQ,O,GA9BqBsE,IAAM9P,WA2ClBic,O,qBClDf,IAAIU,EAAmB,EAAQ,QAM/Bza,EAAO9J,QAJP,SAA4BwkB,GAC1B,GAAIlN,MAAM+I,QAAQmE,GAAM,OAAOD,EAAiBC,K,kCCHlD,uBACe,WACb9M,U,iJCEa,SAAS+M,EAAmBD,GACzC,OCJa,SAA4BA,GACzC,GAAIlN,MAAM+I,QAAQmE,GAAM,OAAO,OAAAD,EAAA,GAAiBC,GDGzC,CAAkBA,IELZ,SAA0B7C,GACvC,GAAsB,oBAAXrE,QAA0BA,OAAOC,YAAYnT,OAAOuX,GAAO,OAAOrK,MAAM+F,KAAKsE,GFIvD,CAAgB6C,IAAQ,OAAAE,EAAA,GAA2BF,IGLvE,WACb,MAAM,IAAIzH,UAAU,wIHIwE,K,kCIL9F,2UAIIzb,EAAa,SAAoBkB,EAAQ6W,GAC3C,OAAO7W,EAAO8Y,OAAO,EAAGjC,EAAO9N,UAAY8N,GAwBzC/K,EAAO,SAAcqW,EAAQjJ,GAW/B,IAVA,IAAIkJ,OAAQ,EACRC,OAAW,EAGXC,EADapJ,EAAI9N,MAAM,KACE,GAEzBmX,EAAcC,EAAWF,GACzBG,EAA+B,KAAnBF,EAAY,GACxBG,EAASC,EAAWR,GAEf1X,EAAI,EAAGmY,EAAIF,EAAO3Z,OAAQ0B,EAAImY,EAAGnY,IAAK,CAC7C,IAAIoY,GAAS,EACT7W,EAAQ0W,EAAOjY,GAAGuB,MAEtB,GAAIA,EAAM9N,QACRmkB,EAAW,CACTrW,MAAOA,EACPE,OAAQ,GACRgN,IAAKA,OAJT,CAcA,IALA,IAAI4J,EAAgBN,EAAWxW,EAAMpO,MACjCsO,EAAS,GACT6W,EAAMC,KAAKD,IAAIR,EAAYxZ,OAAQ+Z,EAAc/Z,QACjDyN,EAAQ,EAELA,EAAQuM,EAAKvM,IAAS,CAC3B,IAAIyM,EAAeH,EAActM,GAC7B0M,EAAaX,EAAY/L,GAE7B,GAAI2M,EAAQF,GAAe,CAKzB/W,EADY+W,EAAa3jB,MAAM,IAAM,KACrBijB,EAAYjjB,MAAMkX,GAAO7K,IAAIT,oBAAoBhK,KAAK,KACtE,MAGF,QAAmByJ,IAAfuY,EAA0B,CAI5BL,GAAS,EACT,MAGF,IAAIO,EAAeC,EAAQC,KAAKL,GAEhC,GAAIG,IAAiBX,EAAW,EACuC,IAA5Cc,EAAczU,QAAQsU,EAAa,KAC6J,KAAU,GACnO,IAAI5c,EAAQ0E,mBAAmBgY,GAC/BhX,EAAOkX,EAAa,IAAM5c,OACrB,GAAIyc,IAAiBC,EAAY,CAItCL,GAAS,EACT,OAIJ,IAAKA,EAAQ,CACXT,EAAQ,CACNpW,MAAOA,EACPE,OAAQA,EACRgN,IAAK,IAAMqJ,EAAYjjB,MAAM,EAAGkX,GAAOtV,KAAK,MAE9C,QAIJ,OAAOkhB,GAASC,GAAY,MAK1BD,EAAQ,SAAexkB,EAAMsb,GAC/B,OAAOpN,EAAK,CAAC,CAAElO,KAAMA,IAASsb,IA6B5BtZ,EAAU,SAAiBmC,EAAI3C,GAEjC,GAAIN,EAAWiD,EAAI,KACjB,OAAOA,EAGT,IAAIyhB,EAAYzhB,EAAGqJ,MAAM,KACrBqY,EAAaD,EAAU,GACvBE,EAAUF,EAAU,GAGpBG,EADcvkB,EAAKgM,MAAM,KACE,GAE3BwY,EAAapB,EAAWiB,GACxBI,EAAerB,EAAWmB,GAG9B,GAAsB,KAAlBC,EAAW,GACb,OAAOE,EAASH,EAAcD,GAIhC,IAAK5kB,EAAW8kB,EAAW,GAAI,KAAM,CACnC,IAAIzhB,EAAW0hB,EAAavZ,OAAOsZ,GAAY1iB,KAAK,KACpD,OAAO4iB,GAA2B,MAAjBH,EAAuB,GAAK,KAAOxhB,EAAUuhB,GAUhE,IAFA,IAAIK,EAAcF,EAAavZ,OAAOsZ,GAClCI,EAAW,GACNvZ,EAAI,EAAGmY,EAAImB,EAAYhb,OAAQ0B,EAAImY,EAAGnY,IAAK,CAClD,IAAIwZ,EAAUF,EAAYtZ,GACV,OAAZwZ,EAAkBD,EAASpT,MAA2B,MAAZqT,GAAiBD,EAAShmB,KAAKimB,GAG/E,OAAOH,EAAS,IAAME,EAAS9iB,KAAK,KAAMwiB,IAMxCQ,EAAe,SAAsBtmB,EAAMsO,GAC7C,IAAIiY,EAAcvmB,EAAKwN,MAAM,KACzBgZ,EAAWD,EAAY,GACvBE,EAAeF,EAAY,GAC3BG,OAAyB3Z,IAAjB0Z,EAA6B,GAAKA,EAG1CE,EAAkB,IADP/B,EAAW4B,GACWzY,KAAI,SAAUsY,GACjD,IAAI7B,EAAQiB,EAAQC,KAAKW,GACzB,OAAO7B,EAAQlW,EAAOkW,EAAM,IAAM6B,KACjC/iB,KAAK,KACJsjB,EAAmBtY,EAAOhK,SAE1BuiB,GADJD,OAAwC7Z,IAArB6Z,EAAiC,GAAKA,GACZ3N,OAGzC6N,QAFmC/Z,IAA1B8Z,EAAsC,GAAKA,GAE/BrZ,MAAM,KAAK,IAAM,GAE1C,OADAmZ,EAAkBT,EAASS,EAAiBD,EAAOI,IAIjDC,EAAmB,SAA0B9J,EAAM9Y,GACrD,IAAIf,EAAS,SAAgBijB,GAC3B,OAAOW,EAAUX,IAInB,OAFiBzB,EAAW3H,GAAM7Z,OAAOA,GAAQ6jB,OAAO3jB,KAAK,OAC9CshB,EAAWzgB,GAAIf,OAAOA,GAAQ6jB,OAAO3jB,KAAK,MAMvDmiB,EAAU,SAWVuB,EAAY,SAAmBX,GACjC,OAAOZ,EAAQ1J,KAAKsK,IAElBd,EAAU,SAAiBc,GAC7B,OAAOA,GAA0B,MAAfA,EAAQ,IAGxBa,EAAY,SAAmB9Y,EAAOwK,GAMxC,MAAO,CAAExK,MAAOA,EAAO+Y,MALX/Y,EAAM9N,QAAU,EAAIskB,EAAWxW,EAAMpO,MAAMwQ,QAAO,SAAU2W,EAAOd,GAG7E,OAFAc,GAlBiB,GAMD,SAAuBd,GACzC,MAAmB,KAAZA,EAYDe,CAAcf,GAAwCW,EAAUX,GAAUc,GAjB7D,EAiB8F5B,EAAQc,GAAUc,GAASE,EAAoCF,GAlB9J,EAkBYA,GAfd,EAgBPA,IACN,GACkCvO,MAAOA,IAG1CmM,EAAa,SAAoBR,GACnC,OAAOA,EAAOxW,IAAImZ,GAAWD,MAAK,SAAUK,EAAGC,GAC7C,OAAOD,EAAEH,MAAQI,EAAEJ,MAAQ,EAAIG,EAAEH,MAAQI,EAAEJ,OAAS,EAAIG,EAAE1O,MAAQ2O,EAAE3O,UAIpEgM,EAAa,SAAoBtJ,GACnC,OAAOA,EAENnb,QAAQ,eAAgB,IAAIqN,MAAM,MAGjC0Y,EAAW,SAAkB3hB,GAC/B,IAAK,IAAImd,EAAOpW,UAAUH,OAAQub,EAAQxP,MAAMwK,EAAO,EAAIA,EAAO,EAAI,GAAIC,EAAO,EAAGA,EAAOD,EAAMC,IAC/F+E,EAAM/E,EAAO,GAAKrW,UAAUqW,GAM9B,OAAOpd,IAHPmiB,EAAQA,EAAMtjB,QAAO,SAAUokB,GAC7B,OAAOA,GAAKA,EAAErc,OAAS,OAEGub,EAAMvb,OAAS,EAAI,IAAMub,EAAMpjB,KAAK,KAAO,KAGrEqiB,EAAgB,CAAC,MAAO,QAOxB8B,EAAiB,SAAwBC,EAAMC,GACjD,IAAIC,EAAW5d,OAAOyC,KAAKib,GAC3B,OAAOE,EAASzc,SAAWnB,OAAOyC,KAAKkb,GAAMxc,QAAUyc,EAASvI,OAAM,SAAU5W,GAC9E,OAAOkf,EAAKviB,eAAeqD,IAAQif,EAAKjf,KAASkf,EAAKlf,Q,qBCrR1DiB,EAAO9J,QAAU,CAAC,CACZioB,OAAQloB,EAAQ,QAChByI,QAAS,CAAC,QAAU,GAAG,UAAY,0FACnC,CACAyf,OAAQloB,EAAQ,QAChByI,QAAS,CAAC,QAAU,KACpB,CACAyf,OAAQloB,EAAQ,QAChByI,QAAS,CAAC,QAAU,GAAG,oBAAsB,CAAC,CAAC,QAAU,uBAAuB,QAAU,CAAC,SAAW,KAAK,oBAAqB,IAAO,CAAC,QAAU,sBAAsB,QAAU,CAAC,OAAS,WAAW,CAAC,QAAU,mCAAmC,CAAC,QAAU,yBAAyB,QAAU,CAAC,SAAW,CAAC,OAAO,WAAW,IAAM,QAAQ,IAAM,aAAa,YAAY,iCAAiC,SAAS,mDAAmD,MAAM,qBAAqB,IAAM,mCAAmC,IAAM,oCAAoC,GAAK,yBAAyB,KAAO,4CAA4C,IAAM,+BAA+B,MAAQ,yCAAyC,KAAO,kCAAkC,KAAO,gCAAgC,GAAK,sBAAsB,KAAO,uBAAuB,IAAM,qBAAqB,KAAO,2CAA2C,IAAM,mCAAmC,KAAO,kCAAkC,MAAQ,wCAAwC,OAAS,0DAA0D,KAAO,mCAAmC,KAAO,4CAA4C,KAAO,6BAA6B,IAAM,kCAAkC,IAAM,kCAAkC,IAAM,uCAAuC,KAAO,mCAAmC,KAAO,yEAAyE,IAAM,oCAAoC,KAAO,oCAAoC,IAAM,4BAA4B,KAAO,yCAAyC,KAAO,qCAAqC,KAAO,6BAA6B,IAAM,8BAA8B,UAAU,iDAAiD,QAAU,qEAAqE,GAAK,iBAAiB,SAAS,4EAA4E,QAAQ,uEAAuE,UAAU,6DAA6D,UAAU,uEAAuE,UAAU,sCAAsC,SAAS,gCAAgC,QAAQ,uEAAuE,QAAQ,uDAAuD,QAAQ,0CAA0C,QAAQ,+CAA+C,QAAQ,4BAA4B,QAAQ,yDAAyD,KAAO,kCAAkC,MAAQ,+CAA+C,IAAM,iBAAiB,OAAS,iDAAiD,SAAW,2GAA2G,KAAO,kCAAkC,MAAQ,iCAAiC,MAAQ,oDAAoD,KAAO,kCAAkC,MAAQ,kCAAkC,OAAS,0CAA0C,KAAO,8BAA8B,MAAQ,2CAA2C,QAAQ,oCAAoC,KAAO,+BAA+B,OAAS,yCAAyC,OAAS,sDAAsD,MAAQ,wCAAwC,KAAO,uBAAuB,OAAS,4CAA4C,MAAQ,kCAAkC,IAAM,wBAAwB,MAAQ,iDAAiD,MAAQ,0CAA0C,OAAS,gDAAgD,KAAO,oCAAoC,MAAQ,wDAAwD,KAAO,sCAAsC,KAAO,0BAA0B,MAAQ,oCAAoC,OAAS,yCAAyC,OAAS,4CAA4C,MAAQ,mBAAmB,KAAO,6BAA6B,KAAO,8BAA8B,SAAW,sCAAsC,OAAS,wDAAwD,MAAQ,oBAAoB,MAAQ,uCAAuC,UAAU,qDAAqD,MAAQ,mCAAmC,MAAQ,wHAAwH,MAAQ,6CAA6C,OAAS,mDAAmD,aAAa,qCAAqC,cAAc,oBAAoB,cAAc,+CAA+C,eAAe,sDAAsD,cAAc,wBAAwB,aAAa,yBAAyB,cAAc,sCAAsC,cAAc,sCAAsC,cAAc,2BAA2B,cAAc,2BAA2B,cAAc,kCAAkC,cAAc,mCAAmC,eAAe,gDAAgD,cAAc,+CAA+C,eAAe,iCAAiC,cAAc,+BAA+B,aAAa,6CAA6C,cAAc,4BAA4B,cAAc,+BAA+B,cAAc,0DAA0D,cAAc,uBAAuB,cAAc,+BAA+B,cAAc,uBAAuB,cAAc,kCAAkC,cAAc,sCAAsC,cAAc,oCAAoC,cAAc,+CAA+C,cAAc,6BAA6B,YAAY,oBAAoB,YAAY,mBAAmB,aAAa,oBAAoB,aAAa,WAAW,aAAa,WAAW,aAAa,YAAY,aAAa,2BAA2B,aAAa,yBAAyB,YAAY,gBAAgB,YAAY,iBAAiB,YAAY,oBAAoB,YAAY,qBAAqB,YAAY,iBAAiB,aAAa,kCAAkC,YAAY,yBAAyB,YAAY,gBAAgB,YAAY,iBAAiB,YAAY,SAAS,QAAU,qBAAqB,UAAY,kBAAkB,OAAS,4DAA4D,MAAQ,qBAAqB,KAAO,6BAA6B,WAAW,iEAAiE,KAAO,yBAAyB,KAAO,4BAA4B,aAAa,uEAAuE,OAAS,kDAAkD,KAAO,gCAAgC,MAAQ,2CAA2C,OAAS,8DAA8D,OAAS,sDAAsD,MAAQ,sCAAsC,KAAO,2BAA2B,MAAQ,8BAA8B,MAAQ,mCAAmC,MAAQ,4CAA4C,MAAQ,uCAAuC,MAAQ,0BAA0B,MAAQ,yCAAyC,KAAO,wBAAwB,IAAM,qBAAqB,IAAM,qBAAqB,IAAM,2BAA2B,IAAM,wBAAwB,mBAAmB,8DAA8D,iBAAiB,sCAAsC,IAAM,+BAA+B,IAAM,qCAAqC,IAAM,gCAAgC,KAAO,0DAA0D,IAAM,sCAAsC,IAAM,uBAAuB,KAAO,8BAA8B,SAAS,6CAA6C,KAAO,qCAAqC,KAAO,gDAAgD,MAAQ,+CAA+C,KAAO,oCAAoC,IAAM,uBAAuB,IAAM,8BAA8B,IAAM,0BAA0B,IAAM,uCAAuC,MAAQ,0CAA0C,SAAS,yCAAyC,IAAM,qBAAqB,GAAK,+DAA+D,GAAK,2BAA2B,IAAM,2BAA2B,SAAS,sCAAsC,KAAO,2CAA2C,IAAM,mCAAmC,KAAO,wCAAwC,IAAM,+BAA+B,KAAO,+CAA+C,MAAQ,wCAAwC,IAAM,4BAA4B,KAAO,kCAAkC,KAAO,2CAA2C,KAAO,yCAAyC,IAAM,0BAA0B,KAAO,gCAAgC,GAAK,oDAAoD,IAAM,yBAAyB,KAAO,qCAAqC,IAAM,yBAAyB,KAAO,+BAA+B,cAAc,uCAAuC,GAAK,uBAAuB,OAAS,wDAAwD,OAAS,sDAAsD,KAAO,uCAAuC,IAAM,0FAA0F,OAAS,sEAAsE,KAAO,iFAAiF,IAAM,6BAA6B,IAAM,oEAAoE,KAAO,mCAAmC,KAAO,uBAAuB,GAAK,cAAc,OAAO,yCAAyC,OAAS,kDAAkD,OAAS,0CAA0C,IAAM,qDAAqD,IAAM,2BAA2B,KAAO,mCAAmC,IAAM,4CAA4C,KAAO,oCAAoC,KAAO,kCAAkC,SAAS,4CAA4C,IAAM,wBAAwB,MAAQ,oDAAoD,KAAO,2BAA2B,GAAK,gBAAgB,KAAO,6BAA6B,MAAQ,0CAA0C,MAAQ,sCAAsC,KAAO,6BAA6B,KAAO,uCAAuC,UAAU,8BAA8B,iBAAiB,oDAAoD,YAAY,6CAA6C,WAAW,mCAAmC,UAAU,6BAA6B,IAAM,mBAAmB,IAAM,0BAA0B,GAAK,gBAAgB,IAAM,yBAAyB,IAAM,gCAAgC,IAAM,6BAA6B,QAAQ,8BAA8B,IAAM,6CAA6C,MAAQ,kCAAkC,IAAM,mCAAmC,IAAM,6BAA6B,IAAM,sBAAsB,KAAO,wCAAwC,UAAU,2CAA2C,KAAO,uBAAuB,IAAM,kBAAkB,KAAO,uDAAuD,IAAM,4BAA4B,KAAO,mCAAmC,IAAM,yBAAyB,KAAO,+BAA+B,IAAM,qBAAqB,GAAK,eAAe,MAAM,kCAAkC,MAAM,+BAA+B,OAAO,sCAAsC,GAAK,sBAAsB,MAAQ,2CAA2C,MAAQ,0DAA0D,KAAO,iDAAiD,KAAO,2CAA2C,GAAK,kDAAkD,IAAM,gEAAgE,MAAQ,4EAA4E,MAAQ,yEAAyE,GAAK,sEAAsE,IAAM,sBAAsB,IAAM,sCAAsC,IAAM,kCAAkC,OAAS,+CAA+C,IAAM,2BAA2B,KAAO,mCAAmC,KAAO,kCAAkC,KAAO,sCAAsC,IAAM,+BAA+B,KAAO,kCAAkC,IAAM,gEAAgE,MAAQ,gDAAgD,KAAO,yCAAyC,MAAQ,kDAAkD,KAAO,yCAAyC,KAAO,2BAA2B,IAAM,WAAW,IAAM,gCAAgC,KAAO,0CAA0C,IAAM,mCAAmC,IAAM,4BAA4B,IAAM,yCAAyC,KAAO,2CAA2C,KAAO,iDAAiD,GAAK,kCAAkC,IAAM,+CAA+C,KAAO,4CAA4C,KAAO,8BAA8B,IAAM,6BAA6B,KAAO,sBAAsB,KAAO,wCAAwC,KAAO,oBAAoB,IAAM,yBAAyB,KAAO,sCAAsC,IAAM,uBAAuB,OAAO,8BAA8B,IAAM,iCAAiC,KAAO,qDAAqD,IAAM,yCAAyC,GAAK,2DAA2D,IAAM,0BAA0B,IAAM,kCAAkC,IAAM,gCAAgC,IAAM,yBAAyB,KAAO,kCAAkC,IAAM,wBAAwB,IAAM,6BAA6B,GAAK,wCAAwC,IAAM,6BAA6B,KAAO,gBAAgB,IAAM,qBAAqB,KAAO,gCAAgC,KAAO,4BAA4B,IAAM,0BAA0B,IAAM,gCAAgC,IAAM,8BAA8B,KAAO,+BAA+B,IAAM,4BAA4B,IAAM,oBAAoB,GAAK,4CAA4C,KAAO,iCAAiC,MAAQ,2DAA2D,KAAO,sCAAsC,KAAO,0CAA0C,IAAM,4BAA4B,IAAM,kCAAkC,KAAO,4CAA4C,IAAM,4BAA4B,KAAO,mCAAmC,KAAO,gDAAgD,KAAO,kCAAkC,MAAQ,6CAA6C,MAAQ,yCAAyC,IAAM,yBAAyB,KAAO,6BAA6B,GAAK,uDAAuD,KAAO,4BAA4B,IAAM,+BAA+B,GAAK,2GAA2G,MAAQ,+CAA+C,IAAM,sDAAsD,IAAM,6BAA6B,KAAO,wCAAwC,IAAM,gCAAgC,KAAO,sDAAsD,IAAM,0BAA0B,KAAO,kCAAkC,MAAQ,4DAA4D,MAAQ,8CAA8C,GAAK,sBAAsB,IAAM,mBAAmB,IAAM,4BAA4B,MAAQ,oBAAoB,IAAM,kCAAkC,IAAM,6BAA6B,SAAW,mEAAmE,SAAW,6BAA6B,YAAc,sDAAsD,OAAS,0BAA0B,IAAM,+BAA+B,OAAS,gDAAgD,OAAS,wBAAwB,OAAS,wBAAwB,KAAO,gCAAgC,IAAM,2BAA2B,IAAM,wBAAwB,IAAM,uCAAuC,KAAO,2CAA2C,KAAO,+CAA+C,KAAO,2BAA2B,KAAO,iCAAiC,IAAM,gCAAgC,KAAO,sBAAsB,MAAQ,qDAAqD,KAAO,wCAAwC,IAAM,iCAAiC,IAAM,2DAA2D,KAAO,0BAA0B,IAAM,+BAA+B,IAAM,oCAAoC,GAAK,iBAAiB,IAAM,sBAAsB,IAAM,wFAAwF,IAAM,sCAAsC,KAAO,iDAAiD,IAAM,2BAA2B,MAAQ,iDAAiD,MAAQ,kDAAkD,IAAM,0DAA0D,KAAO,0CAA0C,IAAM,8BAA8B,GAAK,gHAAgH,IAAM,wBAAwB,KAAO,kCAAkC,KAAO,0CAA0C,KAAO,2BAA2B,MAAQ,mCAAmC,IAAM,+BAA+B,KAAO,wCAAwC,IAAM,6DAA6D,IAAM,4BAA4B,IAAM,uBAAuB,IAAM,8BAA8B,IAAM,4BAA4B,IAAM,+BAA+B,SAAS,wCAAwC,KAAO,qCAAqC,GAAK,4CAA4C,IAAM,yDAAyD,IAAM,8BAA8B,MAAQ,+CAA+C,IAAM,sBAAsB,KAAO,wCAAwC,IAAM,mCAAmC,IAAM,yBAAyB,KAAO,yCAAyC,IAAM,+BAA+B,IAAM,+BAA+B,IAAM,sCAAsC,KAAO,+CAA+C,GAAK,yCAAyC,IAAM,6DAA6D,MAAQ,wCAAwC,KAAO,uDAAuD,IAAM,mBAAmB,IAAM,8BAA8B,GAAK,gBAAgB,MAAM,6BAA6B,QAAQ,gDAAgD,SAAS,oDAAoD,SAAS,gDAAgD,GAAK,yBAAyB,IAAM,gCAAgC,IAAM,4BAA4B,IAAM,mCAAmC,KAAO,0CAA0C,IAAM,gCAAgC,KAAO,wCAAwC,IAAM,8BAA8B,IAAM,gCAAgC,MAAQ,uDAAuD,IAAM,mCAAmC,KAAO,oCAAoC,MAAQ,4CAA4C,KAAO,uFAAuF,IAAM,6BAA6B,KAAO,wCAAwC,KAAO,qCAAqC,IAAM,iCAAiC,MAAQ,gDAAgD,IAAM,2BAA2B,IAAM,2BAA2B,MAAQ,gDAAgD,GAAK,0CAA0C,KAAO,gCAAgC,MAAQ,qDAAqD,OAAS,+DAA+D,KAAO,mCAAmC,KAAO,6CAA6C,KAAO,qCAAqC,MAAQ,yCAAyC,IAAM,kCAAkC,IAAM,wBAAwB,SAAS,0DAA0D,IAAM,+DAA+D,QAAQ,8CAA8C,KAAO,oCAAoC,MAAQ,sDAAsD,IAAM,qCAAqC,UAAY,8BAA8B,SAAS,uBAAuB,IAAM,0BAA0B,MAAQ,8CAA8C,MAAQ,oDAAoD,KAAO,kCAAkC,KAAO,oCAAoC,MAAQ,sDAAsD,IAAM,8BAA8B,OAAS,oEAAoE,IAAM,wBAAwB,IAAM,6BAA6B,KAAO,qCAAqC,KAAO,kEAAkE,QAAU,gGAAgG,IAAM,iCAAiC,IAAM,2BAA2B,IAAM,yBAAyB,GAAK,cAAc,KAAO,oCAAoC,MAAQ,6CAA6C,KAAO,oCAAoC,IAAM,iCAAiC,WAAW,2DAA2D,IAAM,mEAAmE,MAAQ,uDAAuD,KAAO,0CAA0C,IAAM,oCAAoC,IAAM,wBAAwB,OAAS,sCAAsC,KAAO,kCAAkC,KAAO,oCAAoC,MAAQ,4CAA4C,OAAS,wDAAwD,OAAS,8DAA8D,KAAO,+BAA+B,IAAM,gDAAgD,IAAM,yBAAyB,QAAQ,8CAA8C,YAAY,iHAAiH,GAAK,uBAAuB,KAAO,iDAAiD,KAAO,2CAA2C,KAAO,wCAAwC,IAAM,4BAA4B,KAAO,iCAAiC,KAAO,4CAA4C,SAAS,oDAAoD,GAAK,oBAAoB,OAAS,qGAAqG,IAAM,0BAA0B,KAAO,uCAAuC,IAAM,6BAA6B,QAAQ,qDAAqD,IAAM,iCAAiC,KAAO,yCAAyC,IAAM,0BAA0B,IAAM,wBAAwB,QAAQ,gDAAgD,IAAM,yBAAyB,IAAM,4BAA4B,KAAO,sCAAsC,IAAM,qDAAqD,KAAO,yBAAyB,UAAU,4CAA4C,GAAK,qBAAqB,OAAO,oCAAoC,IAAM,uBAAuB,KAAO,uCAAuC,IAAM,4BAA4B,IAAM,qBAAqB,KAAO,oCAAoC,MAAM,gCAAgC,aAAa,qGAAqG,GAAK,wCAAwC,GAAK,4FAA4F,IAAM,yBAAyB,IAAM,4BAA4B,IAAM,6BAA6B,IAAM,uBAAuB,KAAO,sCAAsC,GAAK,qBAAqB,KAAO,uCAAuC,IAAM,4EAA4E,KAAO,kCAAkC,IAAM,gCAAgC,KAAO,qCAAqC,IAAM,6BAA6B,IAAM,2BAA2B,KAAO,sCAAsC,MAAQ,kDAAkD,IAAM,2BAA2B,IAAM,uBAAuB,MAAQ,oDAAoD,KAAO,mCAAmC,IAAM,8BAA8B,IAAM,gCAAgC,IAAM,mCAAmC,IAAM,gCAAgC,UAAU,6DAA6D,IAAM,4CAA4C,IAAM,+BAA+B,IAAM,wBAAwB,MAAQ,oBAAoB,IAAM,gCAAgC,MAAQ,sCAAsC,GAAK,0DAA0D,IAAM,+BAA+B,IAAM,8BAA8B,GAAK,wBAAwB,OAAS,iEAAiE,IAAM,4BAA4B,KAAO,8DAA8D,IAAM,wBAAwB,KAAO,2EAA2E,IAAM,yBAAyB,IAAM,kCAAkC,IAAM,qEAAqE,KAAO,+CAA+C,MAAQ,uDAAuD,OAAS,mEAAmE,UAAU,iEAAiE,IAAM,gCAAgC,IAAM,8FAA8F,IAAM,0DAA0D,MAAQ,mDAAmD,IAAM,8BAA8B,IAAM,8BAA8B,GAAK,oBAAoB,IAAM,sBAAsB,GAAK,kBAAkB,IAAM,0BAA0B,SAAS,6CAA6C,KAAO,iCAAiC,GAAK,qBAAqB,MAAQ,wDAAwD,KAAO,8CAA8C,KAAO,kCAAkC,cAAc,iEAAiE,YAAY,wCAAwC,IAAM,oCAAoC,IAAM,8DAA8D,QAAQ,oDAAoD,QAAQ,kCAAkC,IAAM,iCAAiC,KAAO,kCAAkC,IAAM,qBAAqB,IAAM,iCAAiC,IAAM,gCAAgC,IAAM,+BAA+B,IAAM,2BAA2B,GAAK,oBAAoB,QAAQ,sCAAsC,IAAM,sCAAsC,IAAM,2BAA2B,KAAO,kCAAkC,IAAM,+BAA+B,IAAM,2BAA2B,IAAM,kCAAkC,IAAM,yBAAyB,IAAM,mBAAmB,MAAQ,oDAAoD,IAAM,0BAA0B,GAAK,eAAe,KAAO,4CAA4C,IAAM,iCAAiC,OAAS,mDAAmD,MAAQ,sDAAsD,GAAK,qEAAqE,IAAM,wBAAwB,MAAQ,kDAAkD,IAAM,wBAAwB,IAAM,qDAAqD,IAAM,kCAAkC,KAAO,yCAAyC,IAAM,yBAAyB,cAAc,uBAAuB,IAAM,4BAA4B,IAAM,yBAAyB,IAAM,yBAAyB,IAAM,8BAA8B,KAAO,6BAA6B,IAAM,0BAA0B,MAAQ,kDAAkD,IAAM,oBAAoB,QAAQ,4CAA4C,IAAM,2BAA2B,KAAO,wBAAwB,IAAM,gBAAgB,KAAO,6BAA6B,IAAM,gCAAgC,UAAU,kDAAkD,KAAO,wBAAwB,IAAM,kDAAkD,KAAO,gCAAgC,IAAM,8BAA8B,IAAM,2BAA2B,IAAM,uBAAuB,SAAS,0CAA0C,MAAQ,uCAAuC,KAAO,uCAAuC,IAAM,+BAA+B,IAAM,gCAAgC,IAAM,+BAA+B,IAAM,uBAAuB,IAAM,0BAA0B,GAAK,cAAc,KAAO,+BAA+B,MAAM,uCAAuC,IAAM,mCAAmC,IAAM,2BAA2B,IAAM,2BAA2B,KAAO,mCAAmC,IAAM,mBAAmB,KAAO,uCAAuC,IAAM,0BAA0B,UAAU,2CAA2C,IAAM,8BAA8B,IAAM,2CAA2C,IAAM,6BAA6B,IAAM,iCAAiC,IAAM,mCAAmC,IAAM,0BAA0B,IAAM,gCAAgC,UAAU,mDAAmD,MAAQ,4CAA4C,IAAM,0BAA0B,KAAO,kCAAkC,IAAM,gCAAgC,KAAO,iCAAiC,GAAK,kBAAkB,SAAS,2CAA2C,KAAO,uCAAuC,KAAO,iCAAiC,KAAO,2BAA2B,IAAM,+BAA+B,IAAM,2BAA2B,IAAM,wCAAwC,KAAO,oCAAoC,IAAM,4BAA4B,eAAe,uDAAuD,WAAW,6CAA6C,WAAW,8BAA8B,UAAU,iDAAiD,IAAM,4BAA4B,GAAK,mBAAmB,IAAM,qCAAqC,KAAO,uCAAuC,QAAQ,wDAAwD,WAAW,oEAAoE,IAAM,sBAAsB,IAAM,yBAAyB,MAAQ,2CAA2C,KAAO,oDAAoD,QAAU,iEAAiE,IAAM,2CAA2C,IAAM,8BAA8B,KAAO,+BAA+B,KAAO,wCAAwC,IAAM,2BAA2B,KAAO,sCAAsC,KAAO,4DAA4D,KAAO,oDAAoD,KAAO,oDAAoD,IAAM,4BAA4B,KAAO,uBAAuB,QAAQ,+CAA+C,IAAM,wCAAwC,GAAK,2BAA2B,IAAM,qCAAqC,IAAM,wBAAwB,GAAK,eAAe,IAAM,4BAA4B,IAAM,qBAAqB,IAAM,yBAAyB,IAAM,wBAAwB,MAAQ,gCAAgC,IAAM,qBAAqB,GAAK,sDAAsD,IAAM,sCAAsC,IAAM,yBAAyB,KAAO,gCAAgC,IAAM,8BAA8B,KAAO,qCAAqC,KAAO,mCAAmC,KAAO,qDAAqD,KAAO,4CAA4C,IAAM,qBAAqB,GAAK,uBAAuB,IAAM,wBAAwB,KAAO,sCAAsC,KAAO,+BAA+B,MAAQ,8CAA8C,MAAQ,0CAA0C,IAAM,6BAA6B,IAAM,+BAA+B,GAAK,yBAAyB,MAAQ,2CAA2C,KAAO,qCAAqC,KAAO,iDAAiD,IAAM,8DAA8D,KAAO,0CAA0C,IAAM,4BAA4B,KAAO,4CAA4C,IAAM,6BAA6B,IAAM,0BAA0B,IAAM,2BAA2B,IAAM,0BAA0B,GAAK,iBAAiB,QAAQ,0CAA0C,IAAM,8BAA8B,IAAM,uBAAuB,KAAO,oCAAoC,IAAM,8BAA8B,IAAM,8BAA8B,KAAO,uCAAuC,IAAM,oCAAoC,KAAO,0CAA0C,IAAM,mCAAmC,KAAO,uBAAuB,IAAM,sCAAsC,KAAO,6BAA6B,IAAM,mCAAmC,KAAO,iCAAiC,GAAK,qBAAqB,KAAO,mCAAmC,IAAM,4DAA4D,KAAO,oCAAoC,GAAK,wBAAwB,IAAM,uCAAuC,IAAM,4BAA4B,KAAO,qCAAqC,KAAO,gDAAgD,IAAM,yBAAyB,IAAM,6BAA6B,IAAM,8BAA8B,KAAO,8BAA8B,IAAM,YAAY,IAAM,6BAA6B,GAAK,yBAAyB,IAAM,iCAAiC,IAAM,2BAA2B,QAAQ,0CAA0C,GAAK,wFAAwF,IAAM,iCAAiC,KAAO,sCAAsC,IAAM,2BAA2B,KAAO,wCAAwC,IAAM,oBAAoB,IAAM,+DAA+D,KAAO,kDAAkD,IAAM,0BAA0B,GAAK,WAAW,KAAO,uCAAuC,IAAM,0DAA0D,KAAO,2BAA2B,KAAO,0CAA0C,KAAO,mCAAmC,SAAS,qDAAqD,SAAS,mDAAmD,GAAK,qBAAqB,IAAM,0CAA0C,MAAQ,oDAAoD,IAAM,uCAAuC,KAAO,wCAAwC,IAAM,2BAA2B,MAAQ,qDAAqD,IAAM,2EAA2E,KAAO,sCAAsC,KAAO,qCAAqC,UAAU,8BAA8B,GAAK,+CAA+C,OAAO,iCAAiC,SAAS,kDAAkD,IAAM,yBAAyB,KAAO,2CAA2C,IAAM,0BAA0B,IAAM,sBAAsB,KAAO,wCAAwC,IAAM,wBAAwB,IAAM,uBAAuB,IAAM,uBAAuB,KAAO,6BAA6B,IAAM,wBAAwB,GAAK,sBAAsB,KAAO,+BAA+B,KAAO,uCAAuC,MAAM,6BAA6B,UAAU,oDAAoD,eAAe,sDAAsD,MAAQ,4BAA4B,KAAO,8BAA8B,KAAO,+BAA+B,MAAQ,wCAAwC,KAAO,6BAA6B,MAAQ,gDAAgD,MAAQ,6CAA6C,IAAM,wBAAwB,OAAS,kGAAkG,MAAQ,wDAAwD,IAAM,2BAA2B,KAAO,kCAAkC,KAAO,qCAAqC,IAAM,8BAA8B,MAAQ,wDAAwD,OAAS,8CAA8C,MAAQ,gFAAgF,IAAM,wBAAwB,KAAO,4CAA4C,KAAO,+BAA+B,MAAQ,2CAA2C,KAAO,oCAAoC,QAAU,kEAAkE,IAAM,sBAAsB,KAAO,mCAAmC,KAAO,kCAAkC,IAAM,2BAA2B,KAAO,uCAAuC,IAAM,4BAA4B,KAAO,kCAAkC,IAAM,8BAA8B,OAAS,gDAAgD,OAAS,wDAAwD,KAAO,sCAAsC,IAAM,2BAA2B,KAAO,gCAAgC,KAAO,+BAA+B,IAAM,yBAAyB,MAAQ,4CAA4C,IAAM,4BAA4B,IAAM,uDAAuD,IAAM,uBAAuB,IAAM,0BAA0B,MAAQ,iDAAiD,MAAQ,2BAA2B,KAAO,4BAA4B,GAAK,oBAAoB,MAAQ,8CAA8C,IAAM,6BAA6B,IAAM,2BAA2B,IAAM,0BAA0B,IAAM,sCAAsC,KAAO,+BAA+B,MAAQ,wDAAwD,IAAM,4BAA4B,KAAO,uCAAuC,MAAQ,kDAAkD,GAAK,cAAc,IAAM,6BAA6B,UAAU,wCAAwC,UAAU,gDAAgD,UAAU,+CAA+C,IAAM,4BAA4B,IAAM,+BAA+B,KAAO,sEAAsE,IAAM,uBAAuB,KAAO,0DAA0D,KAAO,yBAAyB,MAAQ,gCAAgC,KAAO,kCAAkC,IAAM,wBAAwB,IAAM,wDAAwD,MAAQ,wCAAwC,eAAe,iEAAiE,OAAO,4BAA4B,KAAO,mCAAmC,IAAM,uBAAuB,KAAO,8BAA8B,WAAW,sDAAsD,KAAO,gCAAgC,OAAS,4EAA4E,MAAQ,oCAAoC,MAAQ,qDAAqD,IAAM,qBAAqB,IAAM,wBAAwB,IAAM,0BAA0B,QAAQ,wCAAwC,GAAK,gBAAgB,IAAM,4BAA4B,IAAM,uBAAuB,GAAK,kBAAkB,GAAK,uBAAuB,IAAM,sBAAsB,SAAS,YAAY,GAAK,0BAA0B,IAAM,yBAAyB,IAAM,kBAAkB,KAAO,2BAA2B,KAAO,+BAA+B,KAAO,6BAA6B,KAAO,6BAA6B,IAAM,6BAA6B,KAAO,8BAA8B,GAAK,gDAAgD,IAAM,qBAAqB,KAAO,uCAAuC,IAAM,uBAAuB,IAAM,kBAAkB,IAAM,yBAAyB,IAAM,4BAA4B,QAAQ,gCAAgC,IAAM,+BAA+B,MAAQ,8CAA8C,GAAK,kBAAkB,IAAM,mCAAmC,KAAO,+BAA+B,IAAM,qBAAqB,IAAM,mBAAmB,IAAM,iCAAiC,KAAO,2BAA2B,IAAM,gBAAgB,GAAK,iBAAiB,KAAO,kCAAkC,KAAO,8BAA8B,KAAO,sBAAsB,IAAM,0BAA0B,IAAM,wBAAwB,IAAM,4BAA4B,IAAM,wBAAwB,IAAM,qDAAqD,IAAM,kBAAkB,KAAO,+BAA+B,IAAM,oBAAoB,IAAM,kCAAkC,MAAM,0BAA0B,SAAS,8CAA8C,KAAO,yBAAyB,OAAS,qCAAqC,IAAM,6BAA6B,KAAO,0BAA0B,KAAO,mCAAmC,UAAU,mDAAmD,MAAQ,uDAAuD,KAAO,qCAAqC,OAAS,gBAAgB,SAAS,sCAAsC,OAAS,kCAAkC,SAAW,qCAAqC,OAAS,2CAA2C,IAAM,6BAA6B,IAAM,WAAW,MAAQ,mCAAmC,KAAO,4BAA4B,GAAK,kBAAkB,IAAM,6BAA6B,OAAS,wDAAwD,IAAM,0BAA0B,GAAK,oBAAoB,IAAM,yDAAyD,KAAO,oCAAoC,IAAM,kEAAkE,IAAM,oBAAoB,IAAM,wBAAwB,IAAM,iBAAiB,QAAQ,iDAAiD,OAAS,uCAAuC,OAAS,iDAAiD,KAAO,mCAAmC,IAAM,qBAAqB,IAAM,2BAA2B,KAAO,oCAAoC,IAAM,+BAA+B,MAAQ,+CAA+C,IAAM,gDAAgD,IAAM,wBAAwB,IAAM,wBAAwB,KAAO,mCAAmC,gBAAgB,wCAAwC,KAAO,8BAA8B,IAAM,yBAAyB,IAAM,YAAY,UAAU,kCAAkC,WAAW,oBAAoB,UAAU,uCAAuC,UAAU,oBAAoB,IAAM,gEAAgE,KAAO,8CAA8C,MAAQ,4CAA4C,IAAM,8BAA8B,IAAM,kCAAkC,IAAM,0BAA0B,IAAM,0BAA0B,MAAQ,2DAA2D,IAAM,2BAA2B,IAAM,yBAAyB,KAAO,sCAAsC,IAAM,4DAA4D,KAAO,gCAAgC,QAAQ,+CAA+C,IAAM,8BAA8B,GAAK,kBAAkB,IAAM,yBAAyB,IAAM,2BAA2B,MAAQ,yCAAyC,IAAM,qDAAqD,KAAO,yCAAyC,IAAM,qCAAqC,IAAM,6BAA6B,KAAO,6CAA6C,IAAM,gCAAgC,KAAO,+DAA+D,IAAM,iCAAiC,IAAM,0BAA0B,KAAO,uCAAuC,KAAO,oCAAoC,MAAQ,qCAAqC,GAAK,YAAY,IAAM,6BAA6B,MAAQ,sDAAsD,IAAM,iBAAiB,KAAO,uCAAuC,OAAS,gDAAgD,KAAO,sBAAsB,IAAM,8BAA8B,KAAO,+BAA+B,GAAK,oBAAoB,KAAO,sCAAsC,MAAQ,6CAA6C,KAAO,qCAAqC,cAAc,2CAA2C,IAAM,mCAAmC,UAAU,8DAA8D,IAAM,2CAA2C,KAAO,yCAAyC,UAAU,qDAAqD,KAAO,qCAAqC,IAAM,0BAA0B,IAAM,yBAAyB,IAAM,4BAA4B,KAAO,oCAAoC,IAAM,yBAAyB,MAAQ,0BAA0B,IAAM,yBAAyB,IAAM,mDAAmD,IAAM,wBAAwB,IAAM,0CAA0C,IAAM,wBAAwB,KAAO,oCAAoC,KAAO,oCAAoC,MAAQ,+CAA+C,IAAM,uCAAuC,IAAM,kCAAkC,IAAM,gCAAgC,QAAU,8CAA8C,OAAS,wDAAwD,KAAO,iDAAiD,KAAO,kCAAkC,IAAM,uBAAuB,GAAK,qBAAqB,IAAM,sBAAsB,IAAM,6BAA6B,MAAQ,oCAAoC,KAAO,2CAA2C,IAAM,yBAAyB,KAAO,sDAAsD,SAAS,sCAAsC,IAAM,4BAA4B,IAAM,iCAAiC,IAAM,2BAA2B,IAAM,wBAAwB,IAAM,wBAAwB,KAAO,qCAAqC,IAAM,oFAAoF,KAAO,iCAAiC,IAAM,0BAA0B,KAAO,mCAAmC,MAAM,4BAA4B,MAAM,wBAAwB,GAAK,qDAAqD,IAAM,wCAAwC,IAAM,iBAAiB,KAAO,yBAAyB,IAAM,8BAA8B,WAAW,4EAA4E,MAAQ,gCAAgC,GAAK,yBAAyB,IAAM,oCAAoC,IAAM,8BAA8B,KAAO,8CAA8C,IAAM,oCAAoC,IAAM,4EAA4E,IAAM,iDAAiD,GAAK,uDAAuD,IAAM,kCAAkC,IAAM,4CAA4C,IAAM,6BAA6B,IAAM,8BAA8B,KAAO,sCAAsC,GAAK,qBAAqB,IAAM,kCAAkC,IAAM,kBAAkB,IAAM,0DAA0D,IAAM,wBAAwB,KAAO,+BAA+B,MAAQ,kBAAkB,MAAQ,mBAAmB,IAAM,mCAAmC,MAAQ,sBAAsB,QAAU,oBAAoB,SAAW,wCAAwC,IAAM,oCAAoC,IAAM,8BAA8B,GAAK,0BAA0B,IAAM,qCAAqC,KAAO,gDAAgD,QAAQ,qDAAqD,GAAK,mBAAmB,OAAO,kCAAkC,IAAM,0DAA0D,KAAO,sBAAsB,IAAM,uBAAuB,IAAM,8CAA8C,IAAM,8BAA8B,IAAM,sCAAsC,KAAO,qCAAqC,IAAM,gCAAgC,KAAO,oCAAoC,IAAM,uBAAuB,GAAK,sBAAsB,IAAM,iCAAiC,IAAM,iCAAiC,KAAO,2CAA2C,GAAK,kCAAkC,KAAO,4BAA4B,MAAM,oCAAoC,IAAM,kCAAkC,GAAK,gHAAgH,IAAM,2BAA2B,IAAM,2BAA2B,IAAM,4CAA4C,IAAM,qEAAqE,IAAM,8BAA8B,QAAQ,4CAA4C,KAAO,gCAAgC,GAAK,qBAAqB,IAAM,+DAA+D,KAAO,yCAAyC,IAAM,8BAA8B,IAAM,wBAAwB,GAAK,iBAAiB,IAAM,wBAAwB,IAAM,gCAAgC,GAAK,mBAAmB,KAAO,2BAA2B,IAAM,8DAA8D,IAAM,4BAA4B,GAAK,kBAAkB,IAAM,0BAA0B,IAAM,qCAAqC,KAAO,oCAAoC,MAAQ,uEAAuE,GAAK,gBAAgB,IAAM,wCAAwC,IAAM,0BAA0B,IAAM,sDAAsD,QAAQ,mDAAmD,IAAM,4BAA4B,IAAM,gCAAgC,IAAM,sCAAsC,IAAM,6BAA6B,KAAO,4DAA4D,IAAM,kCAAkC,GAAK,aAAa,IAAM,gCAAgC,KAAO,sCAAsC,IAAM,6BAA6B,GAAK,kBAAkB,SAAS,8CAA8C,IAAM,+BAA+B,IAAM,mCAAmC,IAAM,4BAA4B,KAAO,6CAA6C,IAAM,+BAA+B,IAAM,6BAA6B,IAAM,4BAA4B,KAAO,oCAAoC,IAAM,yBAAyB,KAAO,+CAA+C,GAAK,oCAAoC,QAAQ,8BAA8B,IAAM,mBAAmB,IAAM,2BAA2B,IAAM,+BAA+B,KAAO,uBAAuB,KAAO,iCAAiC,IAAM,oBAAoB,IAAM,0BAA0B,IAAM,8BAA8B,KAAO,kDAAkD,SAAS,mBAAmB,OAAS,oBAAoB,IAAM,wDAAwD,KAAO,oCAAoC,IAAM,0BAA0B,IAAM,gCAAgC,IAAM,8BAA8B,IAAM,2BAA2B,IAAM,8BAA8B,SAAS,yCAAyC,MAAQ,2CAA2C,IAAM,6BAA6B,KAAO,uCAAuC,IAAM,0BAA0B,KAAO,kCAAkC,IAAM,2BAA2B,IAAM,2BAA2B,MAAQ,4BAA4B,IAAM,yBAAyB,KAAO,yCAAyC,IAAM,iEAAiE,IAAM,4BAA4B,KAAO,kCAAkC,GAAK,oBAAoB,IAAM,0BAA0B,IAAM,6BAA6B,IAAM,6BAA6B,IAAM,qBAAqB,QAAQ,gDAAgD,IAAM,4BAA4B,IAAM,sBAAsB,IAAM,wBAAwB,KAAO,yCAAyC,OAAO,oCAAoC,MAAM,2BAA2B,MAAM,kCAAkC,MAAM,mBAAmB,IAAM,2DAA2D,MAAQ,8BAA8B,IAAM,gCAAgC,MAAQ,gCAAgC,IAAM,iDAAiD,QAAQ,uDAAuD,OAAS,6EAA6E,KAAO,iEAAiE,OAAS,8DAA8D,GAAK,sBAAsB,IAAM,kCAAkC,IAAM,mCAAmC,IAAM,wBAAwB,IAAM,iCAAiC,GAAK,kBAAkB,KAAO,sCAAsC,IAAM,gEAAgE,QAAQ,6CAA6C,MAAQ,qDAAqD,GAAK,kBAAkB,KAAO,iCAAiC,IAAM,uBAAuB,IAAM,2BAA2B,IAAM,8CAA8C,MAAQ,gGAAgG,KAAO,uCAAuC,IAAM,2BAA2B,GAAK,sCAAsC,OAAO,gDAAgD,KAAO,iDAAiD,IAAM,mCAAmC,IAAM,4BAA4B,IAAM,sDAAsD,IAAM,2BAA2B,IAAM,4BAA4B,KAAO,oCAAoC,kBAAkB,6CAA6C,GAAK,iBAAiB,IAAM,4BAA4B,IAAM,sBAAsB,IAAM,yBAAyB,GAAK,0BAA0B,IAAM,wBAAwB,IAAM,+BAA+B,KAAO,8BAA8B,IAAM,0IAA0I,QAAQ,oCAAoC,IAAM,oBAAoB,MAAM,yBAAyB,KAAO,sEAAsE,GAAK,uEAAuE,MAAQ,8CAA8C,IAAM,gCAAgC,IAAM,6BAA6B,SAAS,qDAAqD,UAAU,yDAAyD,aAAa,uEAAuE,SAAS,8DAA8D,UAAU,2EAA2E,SAAS,mCAAmC,UAAU,uCAAuC,SAAS,kFAAkF,SAAS,qCAAqC,SAAS,6DAA6D,SAAS,mCAAmC,SAAS,iGAAiG,IAAM,4BAA4B,KAAO,qCAAqC,IAAM,oCAAoC,IAAM,oFAAoF,MAAQ,wCAAwC,IAAM,gHAAgH,MAAQ,6BAA6B,OAAS,2BAA2B,MAAQ,8CAA8C,GAAK,iBAAiB,KAAO,qCAAqC,MAAQ,8BAA8B,YAAY,wCAAwC,KAAO,2BAA2B,WAAW,2CAA2C,IAAM,+BAA+B,IAAM,gCAAgC,IAAM,sCAAsC,IAAM,uBAAuB,IAAM,8BAA8B,IAAM,wBAAwB,KAAO,+BAA+B,MAAQ,iCAAiC,GAAK,2BAA2B,IAAM,sBAAsB,IAAM,uCAAuC,IAAM,+BAA+B,IAAM,uBAAuB,GAAK,qDAAqD,SAAS,0CAA0C,KAAO,oCAAoC,KAAO,uCAAuC,MAAQ,6BAA6B,OAAS,uBAAuB,IAAM,iCAAiC,MAAQ,wDAAwD,IAAM,qDAAqD,KAAO,wCAAwC,IAAM,2BAA2B,OAAS,gEAAgE,GAAK,mCAAmC,IAAM,iBAAiB,IAAM,2BAA2B,KAAO,wCAAwC,OAAS,uBAAuB,IAAM,wBAAwB,IAAM,6BAA6B,MAAQ,mCAAmC,QAAU,0BAA0B,OAAS,uBAAuB,IAAM,8BAA8B,WAAW,qEAAqE,IAAM,8DAA8D,KAAO,0CAA0C,QAAU,0CAA0C,MAAQ,4EAA4E,OAAS,qBAAqB,IAAM,2BAA2B,UAAU,iDAAiD,KAAO,iCAAiC,KAAO,uBAAuB,GAAK,wDAAwD,MAAQ,6FAA6F,IAAM,mCAAmC,KAAO,6CAA6C,IAAM,wBAAwB,IAAM,4BAA4B,IAAM,yBAAyB,UAAU,2DAA2D,IAAM,4BAA4B,MAAQ,6BAA6B,IAAM,4BAA4B,IAAM,sBAAsB,IAAM,0BAA0B,OAAO,8BAA8B,IAAM,mBAAmB,KAAO,8BAA8B,MAAQ,sCAAsC,KAAO,0BAA0B,IAAM,wCAAwC,KAAO,uEAAuE,IAAM,+CAA+C,GAAK,uCAAuC,IAAM,0BAA0B,IAAM,0BAA0B,IAAM,+BAA+B,IAAM,8BAA8B,IAAM,yBAAyB,KAAO,kCAAkC,IAAM,wBAAwB,KAAO,2BAA2B,IAAM,wBAAwB,IAAM,4BAA4B,IAAM,2BAA2B,IAAM,sBAAsB,IAAM,4CAA4C,IAAM,yDAAyD,IAAM,yBAAyB,IAAM,6BAA6B,KAAO,2CAA2C,MAAQ,uDAAuD,IAAM,4BAA4B,KAAO,qCAAqC,IAAM,+BAA+B,KAAO,mCAAmC,IAAM,6BAA6B,IAAM,yBAAyB,KAAO,yCAAyC,KAAO,6BAA6B,IAAM,kDAAkD,IAAM,sBAAsB,KAAO,iCAAiC,IAAM,qDAAqD,KAAO,kCAAkC,QAAU,uCAAuC,KAAO,0CAA0C,KAAO,sBAAsB,KAAO,mCAAmC,KAAO,0CAA0C,OAAS,uCAAuC,IAAM,6CAA6C,IAAM,iBAAiB,IAAM,mBAAmB,KAAO,qCAAqC,IAAM,oBAAoB,GAAK,cAAc,KAAO,2DAA2D,KAAO,qBAAqB,IAAM,6BAA6B,IAAM,qBAAqB,OAAS,kBAAkB,UAAU,2CAA2C,MAAM,sBAAsB,GAAK,iCAAiC,IAAM,oCAAoC,KAAO,oBAAoB,KAAO,6BAA6B,SAAS,2CAA2C,KAAO,qCAAqC,IAAM,mBAAmB,SAAS,8CAA8C,IAAM,0BAA0B,KAAO,kCAAkC,GAAK,uFAAuF,OAAO,qCAAqC,IAAM,sBAAsB,IAAM,yBAAyB,IAAM,0BAA0B,IAAM,kCAAkC,KAAO,0BAA0B,IAAM,iBAAiB,GAAK,sCAAsC,IAAM,2BAA2B,KAAO,kCAAkC,QAAU,0DAA0D,IAAM,gCAAgC,IAAM,+BAA+B,IAAM,0BAA0B,KAAO,+BAA+B,IAAM,uBAAuB,IAAM,yBAAyB,KAAO,oCAAoC,IAAM,oBAAoB,MAAQ,oDAAoD,IAAM,wBAAwB,GAAK,gDAAgD,KAAO,wCAAwC,KAAO,wCAAwC,MAAQ,4CAA4C,KAAO,kCAAkC,KAAO,iDAAiD,KAAO,gDAAgD,IAAM,uBAAuB,MAAQ,wCAAwC,MAAQ,mCAAmC,GAAK,mCAAmC,IAAM,6BAA6B,KAAO,mCAAmC,IAAM,yEAAyE,KAAO,sCAAsC,KAAO,oCAAoC,KAAO,yBAAyB,IAAM,2DAA2D,IAAM,6BAA6B,IAAM,mBAAmB,IAAM,yBAAyB,KAAO,0BAA0B,GAAK,mBAAmB,IAAM,kCAAkC,OAAS,0CAA0C,IAAM,yBAAyB,IAAM,kCAAkC,IAAM,6BAA6B,IAAM,sDAAsD,KAAO,kCAAkC,IAAM,qBAAqB,IAAM,wBAAwB,GAAK,8BAA8B,IAAM,6BAA6B,IAAM,wEAAwE,SAAS,wCAAwC,KAAO,sCAAsC,KAAO,wCAAwC,KAAO,qCAAqC,IAAM,oEAAoE,GAAK,iBAAiB,GAAK,YAAY,IAAM,qBAAqB,IAAM,0BAA0B,IAAM,0BAA0B,GAAK,uBAAuB,IAAM,gCAAgC,IAAM,8BAA8B,IAAM,uBAAuB,IAAM,+BAA+B,IAAM,+BAA+B,IAAM,yBAAyB,KAAO,yCAAyC,KAAO,4BAA4B,IAAM,4BAA4B,IAAM,0BAA0B,IAAM,0BAA0B,KAAO,2BAA2B,GAAK,mBAAmB,IAAM,6BAA6B,IAAM,2BAA2B,IAAM,wBAAwB,KAAO,0BAA0B,OAAS,yCAAyC,IAAM,uBAAuB,IAAM,qBAAqB,IAAM,4BAA4B,OAAS,mCAAmC,KAAO,6BAA6B,KAAO,4BAA4B,QAAU,kCAAkC,IAAM,6BAA6B,KAAO,+BAA+B,MAAM,8BAA8B,MAAQ,6CAA6C,MAAQ,qDAAqD,KAAO,iCAAiC,GAAK,oBAAoB,KAAO,oCAAoC,IAAM,6BAA6B,IAAM,sBAAsB,MAAQ,mCAAmC,IAAM,6BAA6B,IAAM,mCAAmC,IAAM,0BAA0B,IAAM,mCAAmC,KAAO,oCAAoC,IAAM,uBAAuB,IAAM,2BAA2B,MAAQ,0CAA0C,IAAM,uBAAuB,OAAO,6CAA6C,IAAM,yBAAyB,KAAO,qBAAqB,IAAM,0BAA0B,IAAM,uBAAuB,KAAO,wCAA6C,IAAM,sBAAsB,IAAM,2BAA2B,IAAM,8BAA8B,KAAO,uCAAuC,WAAW,qEAAqE,KAAO,mCAAmC,KAAO,mCAAmC,YAAY,yDAAyD,QAAQ,wCAAwC,IAAM,uDAAuD,KAAO,gCAAgC,KAAO,kCAAkC,KAAO,4BAA4B,KAAO,iCAAiC,GAAK,UAAU,IAAM,qBAAqB,IAAM,mBAAmB,WAAa,CAAC,OAAO,OAAO,eAAiB,GAAG,cAAgB,GAAG,cAAgB,GAAG,WAAa,CAAC,gBAAgB,qBAC9rtE,CACAyf,OAAQloB,EAAQ,QAChByI,QAAS,CAAC,QAAU,GAAG,WAAa,KAAK,MAAO,EAAK,WAAY,IACjE,CACAyf,OAAQloB,EAAQ,QAChByI,QAAS,CAAC,QAAU,O,qBCd1BsB,EAAO9J,QAAU,IAA0B,oD,kCCgD5B,IAhDI,CACjBkoB,wBAAyB,EACzBC,kBAAmB,EACnBC,iBAAkB,EAClBC,iBAAkB,EAClBC,QAAS,EACTC,aAAc,EACdC,gBAAiB,EACjBC,YAAa,EACbC,QAAS,EACTC,KAAM,EACNC,SAAU,EACVC,aAAc,EACdC,WAAY,EACZC,aAAc,EACdC,UAAW,EACXC,QAAS,EACTC,WAAY,EACZC,YAAa,EACbC,aAAc,EACdC,WAAY,EACZC,cAAe,EACfC,eAAgB,EAChBC,gBAAiB,EACjBC,UAAW,EACXC,cAAe,EACfC,aAAc,EACdC,iBAAkB,EAClBva,WAAY,EACZwa,WAAY,EACZ3a,QAAS,EACT4a,MAAO,EACPC,QAAS,EACTC,QAAS,EACTC,OAAQ,EACRC,OAAQ,EACRC,KAAM,EACNC,gBAAiB,EAEjBC,YAAa,EACbC,aAAc,EACdC,YAAa,EACbC,gBAAiB,EACjBC,iBAAkB,EAClBC,iBAAkB,EAClBC,cAAe,EACfC,YAAa,I,qBCzCqB9gB,EAAO9J,QAI5B,WACb,IAAI6qB,GAAO,GACsC,IAA7CC,UAAUC,WAAWzZ,QAAQ,aAC/BuZ,GAAO,GAGT,IACEzQ,EADE4Q,EAAM,GAERC,EAA0B,iBAAbnT,UAAyBA,SACtCoT,EAAOL,EACHI,EAAIE,gBAAgBC,SAAS,QAC7BH,EAAIE,gBAAgBC,SAExB9M,EACE2M,IAAQC,EAAO,aAAe,iBAAiB/O,KAAK8O,EAAII,YAY5D,OAVK/M,GAAU2M,GACbA,EAAI1Q,iBALe,mBAOhBH,EAAW,WAGV,IAFA6Q,EAAIzQ,oBARW,mBAQ2BJ,GAC1CkE,EAAS,EACDlE,EAAW4Q,EAAIM,SAAUlR,MAIhC,SAAS/F,GACdiK,EAASmC,WAAWpM,EAAI,GAAK2W,EAAIxqB,KAAK6T,IA/BWkX,I,oECiDtC,MAnDf,SAAiBC,GAYf,IANA,IAEIna,EAFAoa,EAAI,EAGJxe,EAAI,EACJyE,EAAM8Z,EAAIjgB,OAEPmG,GAAO,IAAKzE,EAAGyE,GAAO,EAE3BL,EAEe,YAAV,OAHLA,EAAwB,IAApBma,EAAIpP,WAAWnP,IAAmC,IAAtBue,EAAIpP,aAAanP,KAAc,GAA2B,IAAtBue,EAAIpP,aAAanP,KAAc,IAA4B,IAAtBue,EAAIpP,aAAanP,KAAc,MAG9F,OAAZoE,IAAM,KAAgB,IAIpDoa,EAEe,YAAV,OALLpa,GAEAA,IAAM,MAGoC,OAAZA,IAAM,KAAgB,IAErC,YAAV,MAAJoa,IAAyC,OAAZA,IAAM,KAAgB,IAItD,OAAQ/Z,GACN,KAAK,EACH+Z,IAA8B,IAAxBD,EAAIpP,WAAWnP,EAAI,KAAc,GAEzC,KAAK,EACHwe,IAA8B,IAAxBD,EAAIpP,WAAWnP,EAAI,KAAc,EAEzC,KAAK,EAEHwe,EAEe,YAAV,OAHLA,GAAyB,IAApBD,EAAIpP,WAAWnP,MAGsB,OAAZwe,IAAM,KAAgB,IASxD,SAHAA,EAEe,YAAV,OAHLA,GAAKA,IAAM,MAG+B,OAAZA,IAAM,KAAgB,KACvCA,IAAM,MAAQ,GAAGrO,SAAS,K,wBC9CrCsO,EAAiB,aACjBC,EAAiB,8BAEjBC,EAAmB,SAA0BC,GAC/C,OAAkC,KAA3BA,EAASzP,WAAW,IAGzB0P,EAAqB,SAA4B9iB,GACnD,OAAgB,MAATA,GAAkC,kBAAVA,GAG7B+iB,EAAmB,aAAQ,SAAUC,GACvC,OAAOJ,EAAiBI,GAAaA,EAAYA,EAAUzrB,QAAQmrB,EAAgB,OAAOO,iBAGxF,EAAoB,SAA2BpjB,EAAKG,GACtD,OAAQH,GACN,IAAK,YACL,IAAK,gBAED,GAAqB,iBAAVG,EACT,OAAOA,EAAMzI,QAAQorB,GAAgB,SAAU/G,EAAOsH,EAAIC,GAMxD,OALAC,EAAS,CACP9gB,KAAM4gB,EACNld,OAAQmd,EACRE,KAAMD,GAEDF,KAMjB,OAAsB,IAAlB,IAASrjB,IAAe+iB,EAAiB/iB,IAAyB,iBAAVG,GAAgC,IAAVA,EAI3EA,EAHEA,EAAQ,MAoCnB,SAASsjB,EAAoBC,EAAaC,EAAYC,EAAeC,GACnE,GAAqB,MAAjBD,EACF,MAAO,GAGT,QAAuCtf,IAAnCsf,EAAcE,iBAKhB,OAAOF,EAGT,cAAeA,GACb,IAAK,UAED,MAAO,GAGX,IAAK,SAED,GAA2B,IAAvBA,EAAcG,KAMhB,OALAR,EAAS,CACP9gB,KAAMmhB,EAAcnhB,KACpB0D,OAAQyd,EAAczd,OACtBqd,KAAMD,GAEDK,EAAcnhB,KAGvB,QAA6B6B,IAAzBsf,EAAczd,OAAsB,CACtC,IAAIqd,EAAOI,EAAcJ,KAEzB,QAAalf,IAATkf,EAGF,UAAgBlf,IAATkf,GACLD,EAAS,CACP9gB,KAAM+gB,EAAK/gB,KACX0D,OAAQqd,EAAKrd,OACbqd,KAAMD,GAERC,EAAOA,EAAKA,KAUhB,OANaI,EAAczd,OAAS,IAStC,OAiDR,SAAgCud,EAAaC,EAAYziB,GACvD,IAAIvH,EAAS,GAEb,GAAI8U,MAAM+I,QAAQtW,GAChB,IAAK,IAAIkD,EAAI,EAAGA,EAAIlD,EAAIwB,OAAQ0B,IAC9BzK,GAAU8pB,EAAoBC,EAAaC,EAAYziB,EAAIkD,IAAI,QAGjE,IAAK,IAAI8U,KAAQhY,EAAK,CACpB,IAAIf,EAAQe,EAAIgY,GAEhB,GAAqB,iBAAV/Y,EACS,MAAdwjB,QAA4Crf,IAAtBqf,EAAWxjB,GACnCxG,GAAUuf,EAAO,IAAMyK,EAAWxjB,GAAS,IAClC8iB,EAAmB9iB,KAC5BxG,GAAUupB,EAAiBhK,GAAQ,IAAM,EAAkBA,EAAM/Y,GAAS,UAO5E,IAAIsO,MAAM+I,QAAQrX,IAA8B,iBAAbA,EAAM,IAAkC,MAAdwjB,QAA+Crf,IAAzBqf,EAAWxjB,EAAM,IAM7F,CACL,IAAI6jB,EAAeP,EAAoBC,EAAaC,EAAYxjB,GAAO,GAEvE,OAAQ+Y,GACN,IAAK,YACL,IAAK,gBAEDvf,GAAUupB,EAAiBhK,GAAQ,IAAM8K,EAAe,IACxD,MAGJ,QAMIrqB,GAAUuf,EAAO,IAAM8K,EAAe,UAtB5C,IAAK,IAAIC,EAAK,EAAGA,EAAK9jB,EAAMuC,OAAQuhB,IAC9BhB,EAAmB9iB,EAAM8jB,MAC3BtqB,GAAUupB,EAAiBhK,GAAQ,IAAM,EAAkBA,EAAM/Y,EAAM8jB,IAAO,KA4B1F,OAAOtqB,EAtGMuqB,CAAuBR,EAAaC,EAAYC,GAG3D,IAAK,WAED,QAAoBtf,IAAhBof,EAA2B,CAC7B,IAAIS,EAAiBZ,EACjBvN,EAAS4N,EAAcF,GAE3B,OADAH,EAASY,EACFV,EAAoBC,EAAaC,EAAY3N,EAAQ6N,GAK9D,MAGJ,IAAK,UAkBP,GAAkB,MAAdF,EACF,OAAOC,EAGT,IAAIQ,EAAST,EAAWC,GAOxB,YAAkBtf,IAAX8f,GAAyBP,EAAwCD,EAATQ,EA2DjE,IASIb,EATAc,EAAe,6BAWnB,IAAI,EAAkB,SAAyBzb,EAAM+a,EAAYD,GAC/D,GAAoB,IAAhB9a,EAAKlG,QAAmC,iBAAZkG,EAAK,IAA+B,OAAZA,EAAK,SAAkCtE,IAAnBsE,EAAK,GAAGzC,OAClF,OAAOyC,EAAK,GAGd,IAAI0b,GAAa,EACbne,EAAS,GACbod,OAASjf,EACT,IAAIigB,EAAU3b,EAAK,GAEJ,MAAX2b,QAAmCjgB,IAAhBigB,EAAQC,KAC7BF,GAAa,EACbne,GAAUsd,EAAoBC,EAAaC,EAAYY,GAAS,IAMhEpe,GAAUoe,EAAQ,GAIpB,IAAK,IAAIngB,EAAI,EAAGA,EAAIwE,EAAKlG,OAAQ0B,IAC/B+B,GAAUsd,EAAoBC,EAAaC,EAAY/a,EAAKxE,GAA6C,KAAzC+B,EAAOoN,WAAWpN,EAAOzD,OAAS,IAE9F4hB,IAKFne,GAAUoe,EAAQngB,IActBigB,EAAaI,UAAY,EAIzB,IAHA,IACI1I,EADA2I,EAAiB,GAG0B,QAAvC3I,EAAQsI,EAAapH,KAAK9W,KAChCue,GAAkB,IAClB3I,EAAM,GAkBR,MAAO,CACLtZ,KAhBS,EAAW0D,GAAUue,EAiB9Bve,OAAQA,EACRqd,KAAMD,K,kCC7TV,uBAGE,WAAAvoB,OAAOa,SAAS8U,UAChB,cAAA3V,OAAOa,SAASgV,SAEhBtR,QAAQmW,MAAR,gFAGS,kBAAmBuM,WAC5BA,UAAU0C,cACPC,SADH,UAEGjP,MAAK,SAAUkP,GACdA,EAAInT,iBAAJ,eAAoC,WAClC6J,oBAAU,6BAA8B,CAAEoJ,cAAeE,IAGzD,IAAMC,EAAmBD,EAAIE,WAC7BxlB,QAAQylB,IAAR,mBAAgCF,GAChCA,EAAiBpT,iBAAjB,eAAiD,WAC/C,OAAQoT,EAAiB5pB,OACvB,IAAI,YACE+mB,UAAU0C,cAAcM,YAK1BjqB,OAAOkqB,cAAe,EAEtB3J,oBAAU,6BAA8B,CAAEoJ,cAAeE,IAGrD7pB,OAAOmqB,qBACT5lB,QAAQylB,IAAR,4CACAhqB,OAAOa,SAASwe,YAKlB9a,QAAQylB,IAAR,qCAKAzJ,oBAAU,2BAA4B,CAAEoJ,cAAeE,KAEzD,MAEF,IAAI,YACFtlB,QAAQmW,MAAR,mDACA6F,oBAAU,2BAA4B,CAAEoJ,cAAeE,IACvD,MAEF,IAAI,YACFtJ,oBAAU,wBAAyB,CAAEoJ,cAAeE,cAM7DjP,OAAM,SAAU1X,GACfqB,QAAQmW,MAAR,4CAA2DxX,O,qBC1DjE/G,EAAQsW,WAAa,CACnB,+BAAgC,kBAAM,kCACtC,oCAAqC,kBAAM,+C,mBCG7CxM,EAAO9J,QARP,SAAgC2d,GAC9B,QAAa,IAATA,EACF,MAAM,IAAIC,eAAe,6DAG3B,OAAOD,I,kCCHT7T,EAAO9J,QAAU,SAAUiuB,GACzB,GAAmB,iBAARA,EACT,MAAM,IAAIlR,UAAU,6BAA6BjQ,cAAcmhB,EAAK,MAItE,OAAI,eAAe9R,KAAK8R,IAMjB,4BAA4B9R,KAAK8R,K,qBCd1C,IAAIC,EAAoB,EAAQ,QAE5BC,EAAkB,EAAQ,QAE1BzJ,EAA6B,EAAQ,QAErC0J,EAAoB,EAAQ,QAMhCtkB,EAAO9J,QAJP,SAA4BwkB,GAC1B,OAAO0J,EAAkB1J,IAAQ2J,EAAgB3J,IAAQE,EAA2BF,IAAQ4J,M,qPC+E/E,EAvFH,CACVvf,MAAO,CACLE,MAAO,UACPD,gBAAiB,WAEnBE,OAAQ,CAAC,CACPC,MAAO,CAAC,UACRtL,MAAO,CACLoL,MAAO,mBAER,CACDE,MAAO,CAAC,WACRtL,MAAO,CACLoL,MAAO,sBAER,CACDE,MAAO,CAAC,UAAW,UAAW,WAC9BtL,MAAO,CACLoL,MAAO,sBAER,CACDE,MAAO,CAAC,SAAU,YAClBtL,MAAO,CACLoL,MAAO,uBAER,CACDE,MAAO,CAAC,YACRtL,MAAO,CACLoL,MAAO,uBAER,CACDE,MAAO,CAAC,YAAa,YACrBtL,MAAO,CACLoL,MAAO,uBAER,CACDE,MAAO,CAAC,UAAW,SAAU,cAC7BtL,MAAO,CACLoL,MAAO,uBAER,CACDE,MAAO,CAAC,YACRtL,MAAO,CACLoL,MAAO,uBAER,CAEDE,MAAO,CAAC,OACRtL,MAAO,CACLoL,MAAO,sBAER,CAEDE,MAAO,CAAC,OACR8B,UAAW,CAAC,UACZpN,MAAO,CACLoL,MAAO,sBAER,CACDE,MAAO,CAAC,cAAe,YACvBtL,MAAO,CACLoL,MAAO,uBAER,CAEDE,MAAO,CAAC,eACR8B,UAAW,CAAC,UACZpN,MAAO,CACLoL,MAAO,YAER,CACDE,MAAO,CAAC,YACRtL,MAAO,CACLoL,MAAO,uBAER,CACDE,MAAO,CAAC,cACRtL,MAAO,CACLoL,MAAO,sBAER,CACDE,MAAO,CAAC,QACRtL,MAAO,CACLoL,MAAO,yB,iCC9EEsf,EAJS,SAAC,GAAiB,oBACxC,OAAO,yBCkBT,IAAM1O,EAAoBqB,IAAS,CACjC7C,OAAQ,kBAAM,+DACdE,QAASgQ,IAqFIC,EAjFG,SAAC,GAAyC,IAA7BC,EAA4B,EAAtCpc,SACnB,OADyD,4BAC/C,cACD,YAACwN,EAAD,CAAmBpN,KAAMgc,IAG9B,YAAC,IAAD,eAAezjB,IAAf,CAA6ByH,KAAMgc,EAAa9d,SAAS,aAAalB,MAAOif,KAC1E,gBAAGjrB,EAAH,EAAGA,UAAWI,EAAd,EAAcA,MAAO8O,EAArB,EAAqBA,OAAQc,EAA7B,EAA6BA,aAAcC,EAA3C,EAA2CA,cAA3C,OACC,mBAAKjQ,UAAWA,EAAY,OAAQI,MAAOA,EAAO8qB,EAAG,GA3B/D,SAAqBhc,GACnB,IAAMic,EAAejc,EAAOlH,OAE5B,GAAqB,IAAjBmjB,EACF,OAAOjc,EAET,IAAMkc,EAAYlc,EAAOic,EAAe,GAExC,OAAyB,IAArBC,EAAUpjB,QAAgBojB,EAAU,GAAGve,MAClCqC,EAAO3Q,MAAM,EAAG4sB,EAAe,GAEjCjc,EAiBImc,CAAYnc,GAAQtE,KAAI,SAAC+B,EAAMjD,GAC9B,IAAI4hB,EAAY,GAEZC,GAAS,EAET5e,EAAK,IAAMA,EAAK,GAAGC,QAAQ5E,QAAiC,MAAvB2E,EAAK,GAAGC,QAAQ,IACvD0e,EAAY,CAAE/f,gBAAiB,0BAC/BggB,GAAS,GACA5e,EAAK,IAAMA,EAAK,GAAGC,QAAQ5E,QAAiC,MAAvB2E,EAAK,GAAGC,QAAQ,IAC9D0e,EAAY,CAAE/f,gBAAiB,0BAC/BggB,GAAS,GACA5e,EAAK,IAA0B,KAApBA,EAAK,GAAGC,SAAkBD,EAAK,IAA0B,MAApBA,EAAK,GAAGC,SACjE0e,EAAY,CAAE/f,gBAAiB,0BAC/BggB,GAAS,GACA5e,EAAK,IAA0B,KAApBA,EAAK,GAAGC,SAAkBD,EAAK,IAA0B,MAApBA,EAAK,GAAGC,UACjE0e,EAAY,CAAE/f,gBAAiB,0BAC/BggB,GAAS,GAEX,IAAMC,EAAYxb,EAAa,CAAErD,OAAMrH,IAAKoE,IAE5C8hB,EAAUprB,MAAQkrB,EAClB,IAMIG,EANEC,EAAY,CAChBC,WAAY,OACZC,cAAe,YACfC,iBAAkB,QAKpB,OACE,iCAASL,EAAT,CAAoBlmB,IAAKqH,EAAOjD,IAC7BiD,EAAK/B,KAAI,SAAC+D,EAAOrJ,GAChB,GAAIimB,IAES,IAARjmB,GAAqB,IAARA,IACe,MAA5BqJ,EAAM/B,QAAQ/C,OAAO,IAA0C,MAA5B8E,EAAM/B,QAAQ/C,OAAO,IACzD,CACA,GAAI8E,EAAM/B,QAAQ5E,OAAS,EAAG,CAC5ByjB,EAAa,CACX/f,MAAO,CAAC,kBAAmB,UAC3BkB,QAAS+B,EAAM/B,QAAQrO,MAAM,IAE/B,IAAMutB,EAAY,CAChBpgB,MAAO,CAAC,YACRkB,QAAS+B,EAAM/B,QAAQ/C,OAAO,IAGhC,OACE,YAAC,WAAD,CAAgBvE,IAAKqJ,EAAQrJ,GAC3B,kCACM2K,EAAc,CAAEtB,MAAOmd,EAAWxmB,QADxC,CAEElF,MAAOsrB,KAET,mBAAUzb,EAAc,CAAEtB,MAAO8c,EAAYnmB,UAIjD,OAAO,kCAAU2K,EAAc,CAAEtB,QAAOrJ,QAAjC,CAAyClF,MAAOsrB,KAI7D,OAAO,mBAAUzb,EAAc,CAAEtB,QAAOrJ,qBClF7CymB,EAZG,SAAC,GAAkC,IAAtBC,EAAqB,EAA/Bpd,SAAmBpP,EAAY,4BAClD,OAAIwsB,EAEA,iBAAG5nB,KAAM5E,EAAM4E,KAAM/B,OAAO,SAAS4pB,IAAI,uBACtCD,GAIE,MCJLE,EAAY,YAAO,MAAP,qBAAH,4BAEC,SAAA1sB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOC,mBAF7B,KAKA,GACbC,GAAI,SAAA7sB,GAAK,OACP,8BAAIQ,UAAU,WAAWssB,GAAI9sB,EAAMoP,SAAS5R,QAAQ,OAAQ,IAAI0rB,eAAmBlpB,KAErF0rB,EAAG,SAAA1rB,GAAK,OAAI,6BAAGQ,UAAU,aAAgBR,KACzC+sB,IAAK,SAAA/sB,GAAK,OACR,YAAC0sB,EAAD,KACE,kBAAS1sB,KAGbwP,KAAM+b,EACN5G,EAAG4H,G,qDCfL,SAASla,EAAQ1S,EAAQ2S,GACvB,IAAIxI,EAAOzC,OAAOyC,KAAKnK,GAEvB,GAAI0H,OAAOiC,sBAAuB,CAChC,IAAIiJ,EAAUlL,OAAOiC,sBAAsB3J,GACvC2S,IAAgBC,EAAUA,EAAQ9R,QAAO,SAAU+R,GACrD,OAAOnL,OAAOE,yBAAyB5H,EAAQ6S,GAAK9F,eAEtD5C,EAAKrM,KAAKuP,MAAMlD,EAAMyI,GAGxB,OAAOzI,EAuBT,IAAIkjB,EAAW,SAAkBC,EAAYzgB,GAC3C,MAAqB,mBAAVA,EACSA,EAAMygB,GAtB5B,SAAuBpqB,GACrB,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAAyB,MAAhBpE,UAAUuB,GAAavB,UAAUuB,GAAK,GAE/CA,EAAI,EACNmI,EAAQtF,GAAQ,GAAMpK,SAAQ,SAAUmD,GACtC,IAAgBjD,EAAQiD,EAAKiH,EAAOjH,OAE7BuB,OAAOqL,0BAChBrL,OAAOsL,iBAAiB9P,EAAQwE,OAAOqL,0BAA0B3F,IAEjEsF,EAAQtF,GAAQpK,SAAQ,SAAUmD,GAChCuB,OAAOC,eAAezE,EAAQiD,EAAKuB,OAAOE,yBAAyBwF,EAAQjH,OAKjF,OAAOjD,EAkBAqqB,CAAc,GAAID,EAAY,GAAIzgB,IAGvC2gB,EAAuB,aAAY,SAAUF,GAC/C,OAAO,aAAY,SAAUzgB,GAC3B,OAAOwgB,EAASC,EAAYzgB,SAI5B,EAAgB,SAAuBxM,GACzC,OAAO,wBAAc,IAAaotB,SAAU,MAAM,SAAU5gB,GAK1D,OAJIxM,EAAMwM,QAAUA,IAClBA,EAAQ2gB,EAAqB3gB,EAArB2gB,CAA4BntB,EAAMwM,QAGrC,wBAAc,IAAakH,SAAU,CAC1CzN,MAAOuG,GACNxM,EAAMoP,c,ykBCzEb,IAAMie,EAAY,CAChBC,MAAO,CACLC,KAAM,+CAIJC,EAAU,OACXH,GADW,IAEdV,OAAQ,CACNc,WAAY,OACZC,QAAS,OACTC,KAAM,UACNf,iBAAkB,qBAClBJ,KAAM,aAIJoB,EAAS,OACVP,GADU,IAEbV,OAAQ,CACNc,WAAY,UACZC,QAAS,OACTC,KAAM,OACNf,iBAAkB,OAClBJ,KAAM,a,qBCXKzoB,EATF,SAAC,GAAD,IAAGvC,EAAH,EAAGA,GAAOxB,EAAV,6BACX6tB,IAAcrsB,GACZ,6BAAGoD,KAAMpD,GAAQxB,GACdA,EAAMoP,UAGT,YAAC,OAAD,aAAY5N,GAAIA,GAAQxB,K,+DCJtB8tB,EAAe,YAAO,MAAP,qBAAH,khBA+CUC,IA/CV,4RA4DUC,IA5DV,wIA2ELC,EAAiB,SAAC,GAAD,IAAGC,EAAH,EAAGA,kBAAmBC,EAAtB,EAAsBA,kBAAtB,OAC5B,YAACL,EAAD,KACE,qBAAOhB,GAAG,SAAStsB,UAAU,UAC3B,qBACE6H,KAAK,WACLykB,GAAG,SACHsB,SAAUD,EACVE,SAASH,IAEX,oBAAM1tB,UAAU,oBClFP8tB,EANG,kBAChB,mBAAKC,MAAM,6BAA6BC,MAAM,KAAKC,OAAO,KAAKC,QAAQ,aACrE,oBAAMC,EAAE,0ECIGC,EANG,kBAChB,mBAAKL,MAAM,6BAA6BC,MAAM,KAAKC,OAAO,KAAKC,QAAQ,aACrE,oBAAMC,EAAE,4ECkDGE,EAhDE,SAAXA,EAAY,GAA6E,IASzFltB,EATwF,IAA1EnB,iBAA0E,MAA9D,GAA8D,EAA1DsuB,EAA0D,EAA1DA,aAAcC,EAA4C,EAA5CA,UAAW7D,EAAiC,EAAjCA,IAAK8D,EAA4B,EAA5BA,MAAOC,EAAqB,EAArBA,MACjEC,GADsF,8EACxEH,EAAU7D,IAMxBiE,EAA+B,IAAjBF,EAAMzmB,OAIH,oBAAZuM,WACTpT,EAAWoT,SAASpT,UAEtB,IAGMytB,EAAyB5uB,EAAN,UAFvBmB,IAAaA,EAASC,WAAaspB,GAAOvpB,EAASC,WAAaytB,IAAOC,OAAOC,WAAarE,GAEnC,SAAW,IAErE,OACE,kBAAI1qB,UAAW4uB,GACZJ,GACC,YAAC,EAAD,CAAMxtB,GAAI0pB,GACP8D,GACCK,IAAOG,QAAQC,WAAaT,GAASG,EACrC,sBAAQ5rB,QAtBD,WACfurB,EAAa5D,IAqBsBwE,aAAW,WAAWlvB,UAAU,aACvD0uB,EAA8B,YAAC,EAAD,MAAhB,YAAC,EAAD,OAEhB,OAINA,GAAeC,EACf,sBACGF,EAAM7jB,KAAI,SAACukB,EAAM1Z,GAAP,OACT,YAAC4Y,EAAD,aACE/oB,IAAK6pB,EAAKzE,IAAMjV,EAAMoE,WACtByU,aAAcA,EACdC,UAAWA,GACPY,QAIR,O,g5CC7CV,IAkJeC,GAjCF,SAAC,GAAe,IAAbC,EAAY,EAAZA,MACTC,EAAYC,oBAAS,WACxB,OAnHsB,SAAAF,GACxB,IAUMG,GAVeX,IAAOG,QAAQS,YAChCJ,EAAMpvB,QACJ,kBAIe,MAJf,EACE8e,KACE2Q,OAAUC,QAIhBN,GAEsBhiB,QACxB,SACEuiB,EADF,GAeE,IARI,IAQJ,EARG,IAJD7Q,KACE2Q,OAAUC,EAGX,EAHWA,KAAMnB,EAGjB,EAHiBA,MAIdqB,EAAQF,EAAKtlB,MAAM,KAEZylB,EAAcF,EAArBnB,MAHH,iBAQQsB,EARR,QASGC,EAAMF,GAAaA,EAAUG,MAAK,qBAAGC,OAAqBH,KAE1DC,EACGA,EAAIvB,QACPuB,EAAIvB,MAAQ,KAGduB,EAAM,CAAEE,MAAOH,EAAMtB,MAAO,IAC5BqB,EAAU7yB,KAAK+yB,IAEjBF,EAAYE,EAAIvB,OAXlB,KAFEI,IAAOC,QAAUD,IAAOC,OAAOqB,cAAgBN,EAAMtxB,MAAM,GAAI,GAAKsxB,EAAMtxB,MAAM,GAAI,MAEtF,aAAiC,IAajC,IAAM6xB,EACJvB,IAAOC,QAAUD,IAAOC,OAAOqB,cAAgBN,EAAM7nB,OAAS,EAAI6nB,EAAM7nB,OAAS,EAE7EqoB,EAAeP,EAAUG,MAAK,qBAAGC,QAAsBL,EAAMO,MAanE,OAXIC,GACFA,EAAa3F,IAAMiF,EACnBU,EAAa7B,MAAQA,GAErBsB,EAAU7yB,KAAK,CACbizB,MAAOL,EAAMO,GACb1F,IAAKiF,EACLlB,MAAO,GACPD,UAGGoB,IAET,CAAEnB,MAAO,KA1DsB,EA+D7BI,IADFG,QAAWsB,sBA9DoB,MA8DH,GA9DG,EAiE3BN,EAAG,YAAOM,GAKhB,OAHIzB,IAAOC,QAAUD,IAAOC,OAAOqB,cAEnCH,EAAIO,UACGP,EAAI3iB,QAAO,SAACuiB,EAAMD,GAQvB,IAPA,IAOA,EAPME,EAAQF,EAAKtlB,MAAM,KAEZylB,EAAcF,EAArBnB,MAH0B,iBAQrBsB,EARqB,QAS1BC,EAAMF,EAAUG,MAAK,SAAAd,GAAI,OAAIA,GAAQA,EAAKe,OAASH,KAEnDC,EACGA,EAAIvB,QACPuB,EAAIvB,MAAQ,KAGduB,EAAM,CAAEE,MAAOH,EAAMtB,MAAO,IAC5BqB,EAAU7yB,KAAK+yB,IAEbA,GAAOA,EAAIvB,QACbqB,EAAYE,EAAIvB,QAZpB,KAFEI,IAAOC,QAAUD,IAAOC,OAAOqB,cAAgBN,EAAMtxB,MAAM,GAAI,GAAKsxB,EAAMtxB,MAAM,GAAI,MAEtF,aAAiC,IAgBjCuxB,EAAUllB,KAAI,SAAAukB,GACZA,EAAKV,MAAQU,EAAKV,MAAM3K,MAAK,SAASK,EAAGC,GACvC,OAAID,EAAE+L,MAAQ9L,EAAE8L,OAAe,EAC3B/L,EAAE+L,MAAQ9L,EAAE8L,MAAc,EACvB,QAGX,IAAME,EACJvB,IAAOC,QAAUD,IAAOC,OAAOqB,cAAgBN,EAAM7nB,OAAS,EAAI6nB,EAAM7nB,OAAS,EAE7EyN,EAAQqa,EAAUU,WAAU,qBAAGN,QAAsBL,EAAMO,MAKjE,OAHIN,EAAU9nB,QACZ4nB,EAAKnB,MAAMgC,QAAQX,EAAUze,OAAOoE,EAAO,GAAG,IAEzCma,IACNJ,GAKMkB,CAAkBrB,MAFD,GAKpBsB,EAAmB,GAEzBrB,EAASb,MAAMtsB,SAAQ,SAAAgtB,GACjBN,IAAOG,QAAQ4B,cAAgB/B,IAAOG,QAAQ4B,aAAanjB,SAAS0hB,EAAKzE,KAC3EiG,EAAiBxB,EAAKzE,MAAO,EAE7BiG,EAAiBxB,EAAKzE,MAAO,KAXP,MAcQ6E,mBAASoB,GAApCpC,EAdmB,KAcRD,EAdQ,KAuB1B,OACE,YAAC,EAAD,aACEtuB,WAAc6uB,IAAOG,QAAQC,UAAY,gBAAkB,iBAAlD,cACTX,aAVW,SAAA5D,GAAQ,IAAD,EACpB4D,EAAa,SACRC,GADO,WAET7D,IAAO6D,EAAU7D,GAFR,MAUV6D,UAAWA,GACPe,KCjJV,SAASjjB,KAeP,OAdAA,GAAWxF,OAAOyF,QAAU,SAAUjK,GACpC,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAASpE,UAAUuB,GAEvB,IAAK,IAAIpE,KAAOiH,EACV1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAC/CjD,EAAOiD,GAAOiH,EAAOjH,IAK3B,OAAOjD,IAGOmK,MAAM7M,KAAMwI,WAG9B,SAASiK,GAAyB7F,EAAQ8F,GACxC,GAAc,MAAV9F,EAAgB,MAAO,GAE3B,IAEIjH,EAAKoE,EAFLrH,EAkBN,SAAuCkK,EAAQ8F,GAC7C,GAAc,MAAV9F,EAAgB,MAAO,GAC3B,IAEIjH,EAAKoE,EAFLrH,EAAS,GACTiQ,EAAazL,OAAOyC,KAAKiD,GAG7B,IAAK7C,EAAI,EAAGA,EAAI4I,EAAWtK,OAAQ0B,IACjCpE,EAAMgN,EAAW5I,GACb2I,EAAStE,QAAQzI,IAAQ,IAC7BjD,EAAOiD,GAAOiH,EAAOjH,IAGvB,OAAOjD,EA9BMkQ,CAA8BhG,EAAQ8F,GAInD,GAAIxL,OAAOiC,sBAAuB,CAChC,IAAI0J,EAAmB3L,OAAOiC,sBAAsByD,GAEpD,IAAK7C,EAAI,EAAGA,EAAI8I,EAAiBxK,OAAQ0B,IACvCpE,EAAMkN,EAAiB9I,GACnB2I,EAAStE,QAAQzI,IAAQ,GACxBuB,OAAOjG,UAAU6R,qBAAqB/S,KAAK6M,EAAQjH,KACxDjD,EAAOiD,GAAOiH,EAAOjH,IAIzB,OAAOjD,EAmBT,IAAIwuB,GAAe,sBAAW,SAAU5yB,EAAM4D,GAC5C,IAAIivB,EAAa7yB,EAAKuN,MAClBA,OAAuB,IAAfslB,EAAwB,eAAiBA,EACjDC,EAAY9yB,EAAK+yB,KACjBA,OAAqB,IAAdD,EAAuB,GAAKA,EACnC7tB,EAAOkP,GAAyBnU,EAAM,CAAC,QAAS,SAEpD,OAAoB,IAAMkF,cAAc,MAAOkJ,GAAS,CACtDxK,IAAKA,EACLksB,MAAO,6BACPC,MAAOgD,EACP/C,OAAQ+C,EACR9C,QAAS,YACT+C,KAAM,OACNC,OAAQ1lB,EACR6b,YAAa,IACb8J,cAAe,QACfC,eAAgB,SACfluB,GAAoB,IAAMC,cAAc,OAAQ,CACjDgrB,EAAG,6DACY,IAAMhrB,cAAc,WAAY,CAC/CkuB,OAAQ,mBACO,IAAMluB,cAAc,OAAQ,CAC3CmuB,GAAI,KACJC,GAAI,KACJC,GAAI,KACJC,GAAI,UAGRZ,GAAarpB,YAAc,eACZ,UC7Ef,IAAMkqB,GAAW,aAAO,YAA6C,IAA1C1xB,EAAyC,EAAzCA,UAA6BR,GAAY,EAA9BmyB,OAA8B,EAAtBC,MAAsB,+CAClE,OACE,kBAAI5xB,UAAWA,GACb,6BAAGoE,KAAM5E,EAAMwB,IAAQxB,EAAvB,CAA8B6C,OAAO,SAAS4pB,IAAI,wBAC/CzsB,EAAMoP,aAJE,sBAAH,qEAcK,mBAA0B,IAA1B,EAAGgjB,MAA2B,IAAM,MAdzC,+BAemB,SAAApyB,GAAK,OAAI,EAAyB,GAApBA,EAAMoyB,OAAS,KAfhD,0EAuBR,SAAApyB,GAAK,OACLA,EAAMmyB,QAAN,yMAxBQ,0CAuCRE,GAAU,YAAO,QAAP,sBAAH,wbA6BPC,GAAU,aAAO,SAAAtyB,GAAK,OAC1B,iBAAQA,EACN,0BAFY,sBAAH,6HA6DEuyB,GA7CO,SAAC,GAAD,EAAG5wB,SAAH,OACpB,YAAC,cAAD,CACEoiB,MAAK,aAcL9gB,OAAQ,YAAiB,IAAduvB,EAAa,EAAbA,OACT,OACE,YAACH,GAAD,KACGhD,IAAOG,QAAQR,MACd,mBACExuB,UAAW,4BACXiyB,wBAAyB,CAAEC,OAAQrD,IAAOG,QAAQR,SAElD,KACJ,kBAAIxuB,UAAW,aACb,YAAC,GAAD,CAAMqvB,MAAO2C,EAAO3C,QACnBR,IAAOG,QAAQmD,OAAStD,IAAOG,QAAQmD,MAAMnqB,OAAS,GAAK,YAAC8pB,GAAD,MAC3DjD,IAAOG,QAAQmD,MAAMvnB,KAAI,SAACohB,EAAM1mB,GAC/B,GAAkB,KAAd0mB,EAAKA,MAA6B,KAAdA,EAAKmB,KAC3B,OACE,YAACuE,GAAD,CAAUpsB,IAAKA,EAAKtE,GAAIgrB,EAAKA,MAC1BA,EAAKmB,KACN,YAAC,GAAD,CAAc6D,KAAM,eCnHlCoB,GAAO51B,EAAQ,QAEf61B,MAAkBxD,IAAOyD,OAAOxc,SAAU+Y,IAAOyD,OAAOxc,OAAOyc,SAEjEC,GAAgB,GAEhBH,IAAmBxD,IAAOyD,OAAOxc,OAAO2c,WAC1CD,GAAcv1B,KAAK,CACjB8K,KAAK,GAAI8mB,IAAOyD,OAAOxc,OAAO2c,UAC9BjE,MAAM,UACNkE,QAAQ,YAMZ,IAAMtW,GAAoBqB,IAAS,CACjC7C,OAAQ,kBAAM,wDACdE,QAASgQ,IAGX,SAAS6H,KACP,IAAIC,EAAIre,SAASyK,eAAe,UAEZ,WAAhB4T,EAAE5yB,UACJ4yB,EAAE5yB,WAAa,cAEf4yB,EAAE5yB,UAAY,SAIlB,IAAM6yB,GAAc,YAAO,MAAP,sBAAH,2HAMD,SAAArzB,GAAK,OAAKA,EAAMkuB,kBAAoB,eAAY9jB,IAN/C,6CA0KFkpB,GA7JA,SAAC,GAAD,IAAG3xB,EAAH,EAAGA,SAAUusB,EAAb,EAAaA,kBAAmBC,EAAhC,EAAgCA,kBAAhC,OACb,YAAC,cAAD,CACEpK,MAAK,aAmBL9gB,OAAQ,SAAAswB,GACN,IAAMC,EAAUx2B,EAAQ,QAElBy2B,EAAUz2B,EAAQ,QAHV,GAKaA,EAAQ,QAERA,EAAQ,QAM/Bu2B,EAHFG,KACEC,cAAgBC,EAXN,EAWMA,YAAaC,EAXnB,EAWmBA,QAASC,EAX5B,EAW4BA,UAAWC,EAXvC,EAWuCA,KAAMC,EAX7C,EAW6CA,YAIrDC,EAA8B,KAAdF,EAAKvH,KAAcuH,EAAKvH,KAAO,6BAErD,OACE,mBAAKhsB,UAAW,iBACd,mBAAKA,UAAW,iBACd,mBAAKA,UAAW,gBAChB,YAAC,EAAD,CAAMgB,GAAIyyB,EAAezzB,UAAW,eAChC,mBACEA,UAAW,+BACX0zB,IAAoB,KAAfH,EAAKI,MAAeJ,EAAKI,MAAQX,EACtCY,IAAK,UAGT,mBACE5zB,UAAW,4BACXiyB,wBAAyB,CAAEC,OAAQkB,MAGtCvE,IAAOyD,OAAOuB,OACb,kBACE7zB,UAAU,kCACViyB,wBAAyB,CAAEC,OAAQrD,IAAOyD,OAAOuB,UAEjD,KACJ,mBAAKvH,GAAG,SAAStsB,UAAW,UAC1B,mBAAKA,UAAW,iBACd,YAAC,GAAD,CAASmB,SAAUA,IACnB,wBAEF,kBAAInB,UAAW,oCACZwzB,EAAY5oB,KAAI,SAACohB,EAAM1mB,GACtB,GAAkB,KAAd0mB,EAAKA,MAA6B,KAAdA,EAAKmB,KAC3B,OACE,kBAAI7nB,IAAKA,GACP,iBACEtF,UAAU,cACVoE,KAAM4nB,EAAKA,KACX3pB,OAAO,SACP4pB,IAAI,sBACJgG,wBAAyB,CAAEC,OAAQlG,EAAKmB,YAMrC,KAAZkG,EACC,sBACE,iBAAGjvB,KAAMivB,GACP,mBAAKK,IAAKtB,GAAMwB,IAAK,gBAGvB,KAEW,KAAdN,EACC,sBACE,iBACElvB,KAAM,0CAA4CkvB,EAClDjxB,OAAO,SACP4pB,IAAI,uBAEJ,mBAAKjsB,UAAW,YAAa0zB,IAAKT,EAASW,IAAK,cAGlD,KACW,KAAdN,EACC,kBAAItzB,UAAU,yBACZ,KACH6uB,IAAOyD,OAAOuB,OACb,kBAAI7zB,UAAW,gBACb,kBACEA,UAAU,gBACViyB,wBAAyB,CAAEC,OAAQrD,IAAOyD,OAAOuB,WAGnD,KACJ,sBACA,mBACA7zB,UAAW,sCACXiyB,wBAAyB,CAAEC,OAAQ,kEAGnC,sBACE,YAAC,EAAD,CACExE,kBAAmBA,EACnBC,kBAAmBA,KAGtB0E,GACH,mBAAKryB,UAAW,uCACd,YAAC,GAAD,CAAmB8zB,UAAU,EAAMC,QAASvB,MAE5C,QAIN,YAACK,GAAD,CAAanF,kBAAmBA,GAC9B,mBAAK1tB,UAAW,4BACd,oBACE+C,QAAS4vB,GACT3yB,UAAW,eACXg0B,UAAWrB,GACXsB,KAAK,SACLC,SAAU,GAEV,oBAAMl0B,UAAW,YACjB,oBAAMA,UAAW,YACjB,oBAAMA,UAAW,cAGpBqyB,GACC,mBAAKryB,UAAW,iBACd,YAAC,GAAD,CAAmB8zB,UAAU,EAAMC,QAASvB,MAE5C,W,uCCvMhB,SAAS2B,GAAqB7tB,EAAO8tB,GACnC,QAAwCxqB,IAApCtD,EAAM+tB,SAASD,EAAWrsB,MAC5B,OAAOzB,EAAMguB,OAAO,GAAIF,EAAY9tB,EAAMiuB,OAAO,GAIrD,SAASC,GAAMvL,EAAYwL,EAAKz0B,GAC9B,IAAI00B,EAAmB,GACnBC,EAAe,aAAoB1L,EAAYyL,EAAkB10B,GAErE,OAAI00B,EAAiB1sB,OAAS,EACrBhI,EAGF20B,EAAeF,EAAIC,GAG5B,IA6EIE,GAAa,SAASA,EAAW1mB,GAGnC,IAFA,IAAI2mB,EAAM,GAEDnrB,EAAI,EAAGA,EAAIwE,EAAKlG,OAAQ0B,IAAK,CACpC,IAAIqH,EAAM7C,EAAKxE,GACf,GAAW,MAAPqH,EAAJ,CACA,IAAI+jB,OAAQ,EAEZ,cAAe/jB,GACb,IAAK,UACH,MAEF,IAAK,SAED,GAAIgD,MAAM+I,QAAQ/L,GAChB+jB,EAAQF,EAAW7jB,QAInB,IAAK,IAAIjD,KAFTgnB,EAAQ,GAEM/jB,EACRA,EAAIjD,IAAMA,IACZgnB,IAAUA,GAAS,KACnBA,GAAShnB,GAKf,MAGJ,QAEIgnB,EAAQ/jB,EAIV+jB,IACFD,IAAQA,GAAO,KACfA,GAAOC,IAIX,OAAOD,GC1ILE,GDmBgB,SAAuB9vB,GACzC,IAAIqB,EAAQ,aAAYrB,GAExBqB,EAAMiuB,MAAMS,OAAS,SAAUvvB,GAK7B9F,KAAKs1B,SAAWxvB,GAGlBa,EAAM4uB,QAAS,EAEf,IAAIT,EAAM,WACR,IAAK,IAAIlW,EAAOpW,UAAUH,OAAQkG,EAAO,IAAI6F,MAAMwK,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/EtQ,EAAKsQ,GAAQrW,UAAUqW,GAGzB,IAAI4V,EAAa,aAAgBlmB,EAAM5H,EAAM2iB,gBAAYrf,GAEzD,OADA,aAAatD,EAAO8tB,GAAY,GACzB9tB,EAAMhB,IAAM,IAAM8uB,EAAWrsB,MAkCtC,MAAO,CACL0sB,IAAKA,EACLU,GAVO,WACP,IAAK,IAAIC,EAAQjtB,UAAUH,OAAQkG,EAAO,IAAI6F,MAAMqhB,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IACpFnnB,EAAKmnB,GAASltB,UAAUktB,GAG1B,OAAOb,GAAMluB,EAAM2iB,WAAYwL,EAAKG,GAAW1mB,KAM/ConB,aApBiB,WACjB,IAAK,IAAIC,EAAQptB,UAAUH,OAAQkG,EAAO,IAAI6F,MAAMwhB,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IACpFtnB,EAAKsnB,GAASrtB,UAAUqtB,GAG1B,IAAIpB,EAAa,aAAgBlmB,EAAM5H,EAAM2iB,YAC7CkL,GAAqB7tB,EAAO8tB,IAe5BqB,UAnCc,WACd,IAAK,IAAIC,EAAQvtB,UAAUH,OAAQkG,EAAO,IAAI6F,MAAM2hB,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IACpFznB,EAAKynB,GAASxtB,UAAUwtB,GAG1B,IAAIvB,EAAa,aAAgBlmB,EAAM5H,EAAM2iB,YACzC2M,EAAY,aAAexB,EAAWrsB,KAK1C,OAJAosB,GAAqB7tB,EAAO,CAC1ByB,KAAMqsB,EAAWrsB,KACjB0D,OAAQ,cAAgBmqB,EAAY,IAAMxB,EAAW3oB,OAAS,MAEzDmqB,GAyBPC,QAAS,SAAiBC,GACxBA,EAAI3zB,SAAQ,SAAUmD,GACpBgB,EAAM+tB,SAAS/uB,IAAO,MAG1BywB,MAAO,WACLzvB,EAAM2iB,WAAa,GACnB3iB,EAAM+tB,SAAW,GACjB/tB,EAAMiuB,MAAMwB,SAGdxB,MAAOjuB,EAAMiuB,MACbjuB,MAAOA,EACP0vB,oBAAqB,KAAoBt1B,KAAK,KAAM4F,EAAM2iB,YAC1DuL,MAAOA,GAAM9zB,KAAK,KAAM4F,EAAM2iB,WAAYwL,IC5FzB,GAMjB,IALQM,GAAegB,MACbhB,GAAec,QACpBd,GAAeI,GACZJ,GAAeP,MACDO,GAAeiB,oBACtBjB,GAAeO,cAClBP,GAAeU,UACrBV,GAAeN,IACbM,GAAeR,MACfQ,GAAezuB,MCVpB,IAAM2vB,GAAU,u9WCgDRC,G,oJAzCb11B,MAAQ,CACNktB,mBAAmB,G,EAOrByI,oBAAsB,WACpB,IAAMzI,EAAoB9nB,KAAKC,MAAMvF,OAAO81B,aAAazwB,QAAQ,sBAEjE,EAAK2W,SAAS,CAAEoR,uB,EAGlBC,kBAAoB,WAClB,EAAKrR,UAAS,SAAAvb,GAAS,MAAK,CAAE2sB,mBAAoB3sB,EAAU2sB,sBAE5DptB,OAAO81B,aAAanwB,QAAQ,oBAAqBL,KAAKI,WAAW,EAAKxF,MAAMktB,qB,8CAb9ErsB,kBAAA,WACE1B,KAAKw2B,uB,EAeP1zB,OAAA,WAAU,IAAD,EACwB9C,KAAKH,MAA5BoP,EADD,EACCA,SAAUzN,EADX,EACWA,SAEVusB,EAAsB/tB,KAAKa,MAA3BktB,kBAEF2I,EAAqB3I,EAAoBN,EAAYJ,EAE3D,OACE,uBACE,YAAC,IAAD,CAAQvhB,OAAQwqB,KAChB,YAAC,GAAD,CACE90B,SAAUA,EACVusB,kBAAmBA,EACnBC,kBAAmBhuB,KAAKguB,oBAE1B,YAAC,EAAD,CAAsB3hB,MAAOqqB,GAAqBznB,K,GApC9BuF,a,aCNf0d,GAAU,YAAO,QAAP,sBAAH,wLAYJ,SAAAryB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOc,aAZxB,iNAwBP,SAAAztB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOgB,OAxBrB,qPA2CP,SAAA3tB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOgB,OA3CrB,6EAoDPuE,GAAW,aAAO,YAA6C,IAA1C1xB,EAAyC,EAAzCA,UAA6BR,GAAY,EAA9BmyB,OAA8B,EAAtBC,MAAsB,+CACzE,OACE,kBAAI5xB,UAAWA,GACb,6BAAGoE,KAAM5E,EAAMwB,IAAQxB,GACpBA,EAAMoP,aAJS,sBAAH,qEAcF,mBAA0B,IAA1B,EAAGgjB,MAA2B,IAAM,MAdlC,+BAeY,SAAApyB,GAAK,OAAI,EAAyB,GAApBA,EAAMoyB,OAAS,KAfzC,0EAuBf,SAAApyB,GAAK,OACLA,EAAMmyB,QAAN,sMAxBe,0CCgCNI,GA/EO,SAAC,GAAD,IAAG5wB,EAAH,EAAGA,SAAH,OACpB,YAAC,cAAD,CACEoiB,MAAK,aAsBL9gB,OAAQ,YAAiB,IAGnB6zB,EAHKtE,EAAa,EAAbA,OAKT,QAAqBpoB,IAAjBooB,EAAO3C,OAAuB2C,EAAO3C,MAAMrnB,OAAS,EACrCgqB,EAAO3C,MAAMzkB,KAAI,SAACukB,EAAM1Z,GACvC,IAAI8gB,OAES3sB,IAATulB,IAEAA,EAAKpQ,KAAK2Q,OAAOC,OAASxuB,EAASC,UACnCytB,IAAOC,OAAOC,WAAaI,EAAKpQ,KAAK2Q,OAAOC,OAASxuB,EAASC,UAE1D+tB,EAAKpQ,KAAKyX,gBAAgB/H,QAC5B8H,EAAapH,EAAKpQ,KAAKyX,gBAAgB/H,MAAM7jB,KAAI,SAAC6rB,EAAWhhB,GAC3D,IAAMihB,EAASD,EAAUjI,MACrBiI,EAAUjI,MAAMxxB,QAAQ,OAAQ,IAAI0rB,cACpC,IAEJ,OACE,YAAC,GAAD,CAAUpjB,IAAKmQ,EAAOzU,GAAE,IAAM01B,EAAU9E,MAAO,GAC5C6E,EAAUjI,YAOnB+H,IACFD,EAAgBC,MAKtB,OAAID,GAAiBA,EAActuB,OAE/B,YAAC,GAAD,KACE,kBAAIhI,UAAW,kBACb,kBAAIA,UAAW,kBAAf,YACCs2B,IAML,YAAC,GAAD,KACE,4B,UClEZ,IAAMK,GAAU,YAAO,MAAP,qBAAH,0DAGG,qBAAG3qB,MAAkBmgB,OAAOc,aAH/B,2BAMA,qBAAGjhB,MAAkBmgB,OAAOgB,OAN5B,yIAqBPyJ,GAAU,YAAO,OAAP,qBAAH,yEAKG,qBAAG5qB,MAAkBmgB,OAAOc,aAL/B,yBAQK,qBAAGjhB,MAAkBmgB,OAAOc,aARjC,+FAkBP4J,GAAW,YAAO,MAAP,qBAAH,mGAORC,GAAmB,YAAO,MAAP,qBAAH,wCAIhBC,GAAoB,YAAO,MAAP,qBAAH,uCA4BRC,GAxBA,SAAC,GAAD,IAAGpoB,EAAH,EAAGA,SAAUzN,EAAb,EAAaA,SAAb,OACb,YAAC,GAAD,CAAeA,SAAUA,GACvB,YAAC,eAAD,CAAa4R,WAAYkkB,GACvB,YAACN,GAAD,KACE,YAACG,GAAD,CAAkB92B,UAAW,gBAC3B,YAAC,GAAD,CAASmB,SAAUA,KAEpB0tB,IAAOG,QAAQR,MACd,mBACExuB,UAAW,2BACXiyB,wBAAyB,CAAEC,OAAQrD,IAAOG,QAAQR,SAElD,KACJ,YAACoI,GAAD,KACE,YAACC,GAAD,KAAWjoB,IAEb,YAACmoB,GAAD,CAAmB/2B,UAAW,gBAC5B,YAAC,GAAD,CAAcmB,SAAUA,SCjFrB+1B,GAAqB,YAAO,MAAP,sBAAH,khBA2BP,SAAA13B,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOc,aA3BrB,WA4BlB,SAAAztB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOgB,OA5BV,mYAiDP,SAAA3tB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOc,aAjDrB,WAkDlB,SAAAztB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOgB,OAlDV,usBCqHhBgK,GAlHM,SAAC,GAAkB,IAClCC,EADkBC,EAAe,EAAfA,IAAKC,EAAU,EAAVA,IASrBC,GANwBD,EAAI1sB,KAAI,SAAClJ,EAAI+T,GACrC/T,GAAMA,EAAGgpB,MAAQ2M,EAAI3H,OAAOC,OAC9ByH,EAAe3hB,MAIF,IAEX+hB,EAAe,GAiCrB,YA/BqB5tB,IAAjBwtB,GAEEE,EAAI,KACNC,EAAS7M,IAAM4M,EAAI,GAAG5M,IACtB6M,EAAS/I,MAAQ8I,EAAI,GAAG9I,OAE1BgJ,EAAa9M,IAAM,KACnB8M,EAAahJ,MAAQ,KACrB4I,GAAgB,GACU,IAAjBA,GAETG,EAAS7M,IAAM4M,EAAIF,EAAe,GAAKE,EAAIF,EAAe,GAAG1M,IAAM,KACnE6M,EAAS/I,MAAQ8I,EAAIF,EAAe,GAAKE,EAAIF,EAAe,GAAG5I,MAAQ,KACvEgJ,EAAa9M,IAAM,KACnB8M,EAAahJ,MAAQ,MACZ4I,IAAiBE,EAAItvB,OAAS,GAEvCuvB,EAAS7M,IAAM,KACf6M,EAAS/I,MAAQ,KACjBgJ,EAAa9M,IAAM4M,EAAIF,EAAe,GAAKE,EAAIF,EAAe,GAAG1M,IAAM,KACvE8M,EAAahJ,MAAQ8I,EAAIF,EAAe,GAAKE,EAAIF,EAAe,GAAG5I,MAAQ,MAClE4I,IAETG,EAAS7M,IAAM4M,EAAIF,EAAe,GAAG1M,IACrC6M,EAAS/I,MAAQ8I,EAAIF,EAAe,GAAG5I,MACnC8I,EAAIF,EAAe,KACrBI,EAAa9M,IAAM4M,EAAIF,EAAe,GAAG1M,IACzC8M,EAAahJ,MAAQ8I,EAAIF,EAAe,GAAG5I,QAK7C,YAAC0I,GAAD,KACGM,EAAa9M,KAAO0M,GAAgB,EACnC,YAAC,EAAD,CAAMp2B,GAAIs2B,EAAIF,EAAe,GAAG1M,IAAK1qB,UAAW,eAC9C,mBAAKA,UAAW,aACd,mBACEy3B,oBAAoB,gBACpBxJ,OAAO,MACPD,MAAM,MACNiD,KAAK,OACLlD,MAAM,6BACNG,QAAQ,YACR7G,YAAY,IACZ8J,cAAc,QACdC,eAAe,QACfF,OAAO,eACPlxB,UAAU,YAEV,qBACE,oBAAMsxB,GAAG,KAAKC,GAAG,KAAKC,GAAG,IAAIC,GAAG,OAChC,wBAAUJ,OAAO,uBAIvB,mBAAKrxB,UAAW,mBACd,mBAAKA,UAAW,gBACd,qCAEF,mBAAKA,UAAW,qBACd,wBAAOs3B,EAAIF,EAAe,GAAG5I,UAIjC,KACH+I,EAAS7M,KAAO0M,GAAgB,EAC/B,YAAC,EAAD,CAAMp2B,GAAIs2B,EAAIF,EAAe,GAAG1M,IAAK1qB,UAAW,WAC9C,mBAAKA,UAAW,oBACd,mBAAKA,UAAW,gBACd,iCAEF,mBAAKA,UAAW,qBACd,wBAAOs3B,EAAIF,EAAe,IAAME,EAAIF,EAAe,GAAG5I,SAG1D,mBAAKxuB,UAAW,cACd,mBACEy3B,oBAAoB,gBACpBxJ,OAAO,MACPD,MAAM,MACNiD,KAAK,OACLlD,MAAM,6BACNG,QAAQ,YACR7G,YAAY,IACZ8J,cAAc,QACdC,eAAe,QACfF,OAAO,eACPlxB,UAAU,YAEV,qBACE,oBAAMsxB,GAAG,IAAIC,GAAG,KAAKC,GAAG,KAAKC,GAAG,OAChC,wBAAUJ,OAAO,yBAKvB,OChHH,IAAMqG,GAAgB,YAAO,KAAP,sBAAH,wIASf,SAAAl4B,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOe,UATb,KAYbyK,GAAO,YAAO,MAAP,sBAAH,ybA0BJC,GAAiB,kEAEnB,SAAAp4B,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOgB,OAFT,+MAqBjB,SAAA3tB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOH,OArBX,oGA8BZ,SAAAxsB,GAAK,OAAIA,EAAMwM,MAAMmgB,OAAOc,aA9BhB,+CCHf4K,GAnCc,WAAO,IAAD,EACGtI,oBAAS,GAAtCuI,EAD0B,KACdC,EADc,OAGexI,mBAAS,GAAlDyI,EAH0B,KAGRC,EAHQ,KAK3BC,EAAa,WACjB53B,OAAOqe,QAAUqZ,EAAmBD,GAAc,GAAQA,GAAc,GACxEE,EAAoB33B,OAAOqe,UAG7BwZ,qBAAU,WASR,OARA73B,OAAO0W,iBAAiB,SAAUkhB,GAElC53B,OAAO83B,SAAW,WACO,IAAnB93B,OAAOqe,UACToZ,GAAc,GACdE,EAAoB,KAGjB,WACL33B,OAAO2W,oBAAoB,SAAUihB,OAQzC,OACE,sBAAQl4B,UAAS,yBAA0B83B,EAAa,GAAK,QAAU/0B,QALrD,WAClBzC,OAAO+3B,OAAO,EAAG,KAIjB,kB,6kBClBJ,IAAM/H,GAAiBzB,IAAOG,QAAQsB,eAEjBgI,G,kGACnB71B,OAAA,WAAU,IACAswB,EAASpzB,KAAKH,MAAduzB,KAER,IAAKA,EACH,OAAO,KAET,IAAKA,EAAKG,KAER,OACE,YAAC,GAAWvzB,KAAKH,MACf,wCACA,iBAAGQ,UAAW,cACZ,YAAC,OAAD,CAAMgB,GAAI,KAAV,aAZD,IAkBLgxB,EAKEe,EALFf,OACAqF,EAIEtE,EAJFsE,IAnBK,EAuBHtE,EAHFG,KACEC,aAIEoF,GAzBC,EAqBaC,aArBb,EAqB2BhK,MAIjBwD,EAAO3C,MACrBzkB,KAAI,qBAAGmU,KAAgB2Q,OAAOC,QAC9B1vB,QAAO,SAAA0vB,GAAI,MAAa,MAATA,KACf7L,OACAzW,QACC,SAACC,EAAKmrB,GAC0C,IAAD,EAA7C,GAAInI,GAAeL,MAAK,SAAAvF,GAAG,OAAIA,IAAQ+N,KACrC,OAAO,SAAKnrB,GAAZ,WAAkBmrB,GAAM,CAACA,GAAzB,IAGF,IAMgE,EAN5Dz6B,EAASy6B,EAAIpuB,MAAM,KAAK,GAM5B,OAJIwkB,IAAOC,QAAUD,IAAOC,OAAOqB,gBACjCnyB,GAAkB,KAGhBA,GAAUsyB,GAAeL,MAAK,SAAAvF,GAAG,OAAIA,IAAG,IAAS1sB,KAC5C,SAAKsP,GAAZ,eAAsBtP,GAAtB,sBAAqCsP,EAAI,IAAItP,IAA7C,CAAwDy6B,IAAxD,IAEO,SAAKnrB,GAAZ,IAAiBmhB,MAAM,GAAD,mBAAMnhB,EAAImhB,OAAV,CAAiBgK,QAG3C,CAAEhK,MAAO,MAGP6I,EAAMhH,GACTjjB,QAAO,SAACC,EAAKmrB,GACZ,OAAOnrB,EAAI/D,OAAOgvB,EAASE,MAC1B,IACFlvB,OAAOgvB,EAAS9J,OAChB7jB,KAAI,SAAA+kB,GACH,GAAIA,EAAM,CAAC,IACD5Q,EAASiT,EAAO3C,MAAMY,MAAK,qBAAGlR,KAAgB2Q,OAAOC,OAASA,KAA9D5Q,KAER,MAAO,CAAEyP,MAAOzP,EAAK2Q,OAAOlB,MAAO9D,IAAK3L,EAAK2Q,OAAOC,UAKpD+I,EAAYrB,EAAIsB,YAAYD,UAE5BE,EAAkBvB,EAAIsB,YAAYC,gBAEpCC,EAAehK,IAAOC,OAAOgK,QAMjC,OAJAD,EAC+B,MAA7BhK,IAAOC,OAAOC,WAAqB8J,EAAehK,IAAOC,OAAOC,WAAa8J,EAC/EA,GAA8BxB,EAAI3H,OAAOC,KAGvC,YAAC,GAAWhwB,KAAKH,MACf,YAAC,IAAD,KACGk5B,EAAY,yBAAQA,GAAqB,KACzCA,EAAY,oBAAM3wB,KAAK,QAAQ6E,QAAS8rB,IAAgB,KACxDE,EAAkB,oBAAM7wB,KAAK,cAAc6E,QAASgsB,IAAsB,KAC1EF,EAAY,oBAAMpQ,SAAS,WAAW1b,QAAS8rB,IAAgB,KAC/DE,EAAkB,oBAAMtQ,SAAS,iBAAiB1b,QAASgsB,IAAsB,KACjFF,EAAY,oBAAMpQ,SAAS,gBAAgB1b,QAAS8rB,IAAgB,KACpEE,EACC,oBAAMtQ,SAAS,sBAAsB1b,QAASgsB,IAC5C,KACJ,oBAAM3M,IAAI,YAAY7nB,KAAMy0B,KAE9B,mBAAK74B,UAAW,gBACd,YAAC03B,GAAD,KAAgBL,EAAI3H,OAAOlB,OAC3B,YAACmJ,GAAD,CAAM33B,UAAW,gBAEnB,YAAC43B,GAAD,KACE,YAAC,IAAD,KAAcP,EAAI0B,OAEpB,mBAAK/4B,UAAW,oBACd,YAAC,GAAD,CAAcq3B,IAAKA,EAAKC,IAAKA,KAE/B,YAAC,GAAD,Q,GAnGoCjzB,c,kCCf5C,oEAEA,SAAS2xB,EAAoB/M,EAAYyL,EAAkBsE,GACzD,IAAIrE,EAAe,GAQnB,OAPAqE,EAAW3uB,MAAM,KAAKlI,SAAQ,SAAUnC,QACR4J,IAA1Bqf,EAAWjpB,GACb00B,EAAiBz3B,KAAKgsB,EAAWjpB,IAEjC20B,GAAgB30B,EAAY,OAGzB20B,EAGT,IAAIsE,EAAe,SAAsB3yB,EAAO8tB,EAAY8E,GAC1D,IAAIl5B,EAAYsG,EAAMhB,IAAM,IAAM8uB,EAAWrsB,KAe7C,IARiB,IAAhBmxB,QAIqFtvB,IAAhCtD,EAAM2iB,WAAWjpB,KACrEsG,EAAM2iB,WAAWjpB,GAAao0B,EAAW3oB,aAGH7B,IAApCtD,EAAM+tB,SAASD,EAAWrsB,MAAqB,CACjD,IAAInJ,EAAUw1B,EAEd,EAAG,CACiB9tB,EAAMguB,OAAO,IAAMt0B,EAAWpB,EAAS0H,EAAMiuB,OAAO,GACtE31B,EAAUA,EAAQkqB,gBACClf,IAAZhL,M,kCCpBb,IACMu6B,EACAjhB,EA4SAkhB,EA9SFrtB,GACEotB,EAAW,EACXjhB,EAAI,CACNmhB,KAAM,CACJC,OAAQ,SAAgBpqB,GACtB,OAAIA,aAAkBkqB,EACb,IAAIA,EAAMlqB,EAAOrH,KAAMqQ,EAAEmhB,KAAKC,OAAOpqB,EAAOtC,SAAUsC,EAAOO,OACnC,UAAxByI,EAAEmhB,KAAKxxB,KAAKqH,GACdA,EAAOtE,IAAIsN,EAAEmhB,KAAKC,QAElBpqB,EAAOlS,QAAQ,KAAM,SAASA,QAAQ,KAAM,QAAQA,QAAQ,UAAW,MAGlF6K,KAAM,SAAc6R,GAClB,OAAO7S,OAAOjG,UAAUiZ,SAASna,KAAKga,GAAG2H,MAAM,oBAAoB,IAErEkY,MAAO,SAAe/yB,GAOpB,OANKA,EAAU,MACbK,OAAOC,eAAeN,EAAK,OAAQ,CACjCf,QAAS0zB,IAIN3yB,EAAU,MAGnBgzB,MAAO,SAAe9f,EAAG+f,GACvB,IAAI5xB,EAAOqQ,EAAEmhB,KAAKxxB,KAAK6R,GAIvB,OAFA+f,EAAUA,GAAW,GAEb5xB,GACN,IAAK,SACH,GAAI4xB,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,IACvB,OAAO+f,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,IAM9B,IAAK,IAAIpU,KAHLk0B,EAAQ,GACZC,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,IAAM8f,EAEX9f,EACVA,EAAEzX,eAAeqD,KACnBk0B,EAAMl0B,GAAO4S,EAAEmhB,KAAKG,MAAM9f,EAAEpU,GAAMm0B,IAItC,OAAOD,EAET,IAAK,QACH,GAAIC,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,IACvB,OAAO+f,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,IAG9B,IAAI8f,EAAQ,GAKZ,OAJAC,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,IAAM8f,EAC3B9f,EAAEvX,SAAQ,SAAUu3B,EAAGhwB,GACrB8vB,EAAM9vB,GAAKwO,EAAEmhB,KAAKG,MAAME,EAAGD,MAEtBD,EAGX,OAAO9f,IAGXlM,UAAW,CACTmsB,OAAQ,SAAgBrN,EAAIsN,GAC1B,IAAIC,EAAO3hB,EAAEmhB,KAAKG,MAAMthB,EAAE1K,UAAU8e,IAEpC,IAAK,IAAIhnB,KAAOs0B,EACdC,EAAKv0B,GAAOs0B,EAAMt0B,GAGpB,OAAOu0B,GAYTC,aAAc,SAAsBC,EAAQC,EAAQ1F,EAAQ3mB,GAE1D,IAAIsB,GADJtB,EAAOA,GAAQuK,EAAE1K,WACEusB,GAEnB,GAAwB,GAApB5xB,UAAUH,OAAa,CAGzB,IAAK,IAAIiyB,KAFT3F,EAASnsB,UAAU,GAGbmsB,EAAOryB,eAAeg4B,KACxBhrB,EAAQgrB,GAAY3F,EAAO2F,IAI/B,OAAOhrB,EAGT,IAAI8Q,EAAM,GAEV,IAAK,IAAIpR,KAASM,EAChB,GAAIA,EAAQhN,eAAe0M,GAAQ,CACjC,GAAIA,GAASqrB,EACX,IAAK,IAAIC,KAAY3F,EACfA,EAAOryB,eAAeg4B,KACxBla,EAAIka,GAAY3F,EAAO2F,IAK7Bla,EAAIpR,GAASM,EAAQN,GAWzB,OANAuJ,EAAE1K,UAAU0sB,IAAIhiB,EAAE1K,WAAW,SAAUlI,EAAKG,GACtCA,IAAUkI,EAAKosB,IAAWz0B,GAAOy0B,IACnCp6B,KAAK2F,GAAOya,MAITpS,EAAKosB,GAAUha,GAGxBma,IAAK,SAAaxgB,EAAGygB,EAAUtyB,EAAM4xB,GAGnC,IAAK,IAAI/vB,KAFT+vB,EAAUA,GAAW,GAEP/f,EACRA,EAAEzX,eAAeyH,KACnBywB,EAASz6B,KAAKga,EAAGhQ,EAAGgQ,EAAEhQ,GAAI7B,GAAQ6B,GAER,WAAtBwO,EAAEmhB,KAAKxxB,KAAK6R,EAAEhQ,KAAqB+vB,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,EAAEhQ,KAI7B,UAAtBwO,EAAEmhB,KAAKxxB,KAAK6R,EAAEhQ,KAAoB+vB,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,EAAEhQ,OAClE+vB,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,EAAEhQ,MAAO,EAE9BwO,EAAE1K,UAAU0sB,IAAIxgB,EAAEhQ,GAAIywB,EAAUzwB,EAAG+vB,KANnCA,EAAQvhB,EAAEmhB,KAAKE,MAAM7f,EAAEhQ,MAAO,EAE9BwO,EAAE1K,UAAU0sB,IAAIxgB,EAAEhQ,GAAIywB,EAAU,KAAMV,OAUhDW,QAAS,GACTC,UAAW,SAAmBlN,EAAMle,EAAS/B,GAC3C,IAAIotB,EAAM,CACRtrB,KAAMme,EACNle,QAASA,EACT/B,SAAUA,GAGZ,OADAotB,EAAIprB,OAASgJ,EAAEnI,SAASuqB,EAAItrB,KAAMsrB,EAAIrrB,SAC/BmqB,EAAMpzB,UAAUkS,EAAEmhB,KAAKC,OAAOgB,EAAIprB,QAASorB,EAAIptB,WAExDqtB,aAAc,SAAsBpN,EAAMqN,EAAQvrB,EAASwG,EAAOglB,EAAUC,EAASr4B,GACnF,IAAI+2B,EAAQlhB,EAAEkhB,MAEd,IAAK,IAAIzqB,KAASM,EAChB,GAAKA,EAAQhN,eAAe0M,IAAWM,EAAQN,GAA/C,CAIA,GAAIA,GAAStM,EACX,OAGF,IAAIs4B,EAAW1rB,EAAQN,GACvBgsB,EAAqC,UAA1BziB,EAAEmhB,KAAKxxB,KAAK8yB,GAAwBA,EAAW,CAACA,GAE3D,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAS3yB,SAAU4yB,EAAG,CACxC,IAAIC,EAAUF,EAASC,GACnBb,EAASc,EAAQd,OACjBe,IAAeD,EAAQC,WACvBC,IAAWF,EAAQE,OACnBC,EAAmB,EACnBvrB,EAAQorB,EAAQprB,MAEpB,GAAIsrB,IAAWF,EAAQA,QAAQI,OAAQ,CAErC,IAAIC,EAAQL,EAAQA,QAAQhhB,WAAWwH,MAAM,YAAY,GACzDwZ,EAAQA,QAAUM,OAAON,EAAQA,QAAQtuB,OAAQ2uB,EAAQ,KAG3DL,EAAUA,EAAQA,SAAWA,EAE7B,IAAK,IAAInxB,EAAI+L,EAAO2lB,EAAMX,EAAU/wB,EAAI8wB,EAAOxyB,OAAQozB,GAAOZ,EAAO9wB,GAAG1B,SAAU0B,EAAG,CACnF,IAAIue,EAAMuS,EAAO9wB,GAEjB,GAAI8wB,EAAOxyB,OAASmlB,EAAKnlB,OAEvB,OAGF,KAAIigB,aAAemR,GAAnB,CAIA,GAAI2B,GAAUrxB,GAAK8wB,EAAOxyB,OAAS,EAAG,CAIpC,GAHA6yB,EAAQ9Q,UAAYqR,IAChB/Z,EAAQwZ,EAAQtY,KAAK4K,IAGvB,MAQF,IALA,IAAIrT,EAAOuH,EAAM5L,OAASqlB,EAAazZ,EAAM,GAAGrZ,OAAS,GACrDhH,EAAKqgB,EAAM5L,MAAQ4L,EAAM,GAAGrZ,OAC5B8F,EAAIpE,EACJwhB,EAAIkQ,EAECjtB,EAAMqsB,EAAOxyB,OAAQ8F,EAAIK,IAAQ+c,EAAIlqB,IAAOw5B,EAAO1sB,GAAGjG,OAAS2yB,EAAO1sB,EAAI,GAAGitB,UAAWjtB,EAG3FgM,IAFJoR,GAAKsP,EAAO1sB,GAAG9F,YAGX0B,EACF0xB,EAAMlQ,GAKV,GAAIsP,EAAO9wB,aAAc0vB,EACvB,SAIFiC,EAASvtB,EAAIpE,EACbue,EAAMkF,EAAK5uB,MAAM68B,EAAKlQ,GACtB7J,EAAM5L,OAAS2lB,MACV,CACLP,EAAQ9Q,UAAY,EACpB,IAAI1I,EAAQwZ,EAAQtY,KAAK0F,GACrBoT,EAAS,EAGf,GAAKha,EAAL,CAQIyZ,IACFE,EAAmB3Z,EAAM,GAAKA,EAAM,GAAGrZ,OAAS,GAK9ChH,GAFA8Y,EAAOuH,EAAM5L,MAAQulB,IACrB3Z,EAAQA,EAAM,GAAG9iB,MAAMy8B,IACLhzB,OAFtB,IAGIgyB,EAAS/R,EAAI1pB,MAAM,EAAGub,GACtBwhB,EAAQrT,EAAI1pB,MAAMyC,GAClBkN,EAAO,CAACxE,EAAG2xB,GAEXrB,MACAtwB,EACF0xB,GAAOpB,EAAOhyB,OACdkG,EAAKjR,KAAK+8B,IAGZ,IAAIuB,EAAU,IAAInC,EAAMzqB,EAAOorB,EAAS7hB,EAAEnI,SAASsR,EAAO0Y,GAAU1Y,EAAO5R,EAAO4R,EAAO0Z,GAazF,GAZA7sB,EAAKjR,KAAKs+B,GAEND,GACFptB,EAAKjR,KAAKq+B,GAGZvnB,MAAMnT,UAAUyQ,OAAO7E,MAAMguB,EAAQtsB,GAEvB,GAAVmtB,GACFnjB,EAAEqiB,aAAapN,EAAMqN,EAAQvrB,EAASvF,EAAG0xB,GAAK,EAAMzsB,GAGlD+rB,EACF,WAtCA,GAAIA,EACF,WA2CZc,MAAO,CACLzuB,IAAK,cAEPgD,SAAU,SAAkBod,EAAMle,EAAS/B,GACzC,IAAIstB,EAAS,CAACrN,GACVjqB,EAAO+L,EAAQ/L,KAEnB,GAAIA,EAAM,CACR,IAAK,IAAIyL,KAASzL,EAChB+L,EAAQN,GAASzL,EAAKyL,UAGjBM,EAAQ/L,KAKjB,OAFAgV,EAAEqiB,aAAapN,EAAMqN,EAAQvrB,EAAS,EAAG,GAAG,GAErCurB,KAIPpB,EAAQlhB,EAAEkhB,MAAQ,SAAUvxB,EAAM+E,EAAS6C,EAAOgsB,EAAYV,GAChEp7B,KAAKkI,KAAOA,EACZlI,KAAKiN,QAAUA,EACfjN,KAAK8P,MAAQA,EAEb9P,KAAKqI,OAAqC,GAA3ByzB,GAAc,IAAIzzB,OACjCrI,KAAKo7B,SAAWA,IAGZ/0B,UAAY,SAAU0T,EAAGxM,EAAUwuB,GACvC,GAAgB,iBAALhiB,EACT,OAAOA,EAGT,GAAuB,UAAnBxB,EAAEmhB,KAAKxxB,KAAK6R,GACd,OAAOA,EAAE9O,KAAI,SAAU4U,GACrB,OAAO4Z,EAAMpzB,UAAUwZ,EAAStS,EAAUwM,MACzCvZ,KAAK,IAGV,IAAIm6B,EAAM,CACRzyB,KAAM6R,EAAE7R,KACR+E,QAASwsB,EAAMpzB,UAAU0T,EAAE9M,QAASM,EAAUwuB,GAC9CC,IAAK,OACLC,QAAS,CAAC,QAASliB,EAAE7R,MACrBg0B,WAAY,GACZ3uB,SAAUA,EACVwuB,OAAQA,GAGV,GAAIhiB,EAAEjK,MAAO,CACX,IAAIqsB,EAAmC,UAAzB5jB,EAAEmhB,KAAKxxB,KAAK6R,EAAEjK,OAAqBiK,EAAEjK,MAAQ,CAACiK,EAAEjK,OAC9DsE,MAAMnT,UAAU3D,KAAKuP,MAAM8tB,EAAIsB,QAASE,GAG1C,IAAID,EAAah1B,OAAOyC,KAAKgxB,EAAIuB,YAAYjxB,KAAI,SAAU7C,GACzD,OAAOA,EAAO,MAAQuyB,EAAIuB,WAAW9zB,IAAS,IAAI/K,QAAQ,KAAM,UAAY,OAC3EmD,KAAK,KACR,MAAO,IAAMm6B,EAAIqB,IAAM,WAAarB,EAAIsB,QAAQz7B,KAAK,KAAO,KAAO07B,EAAa,IAAMA,EAAa,IAAM,IAAMvB,EAAI1tB,QAAU,KAAO0tB,EAAIqB,IAAM,KAGzIzjB,GAOTnM,EAAMyB,UAAUuuB,OAAS,CACvB,QAAW,kBACX,OAAU,iBACV,QAAW,sBACX,MAAS,0BACT,IAAO,CACLlB,QAAS,wHACTE,QAAQ,EACRhB,OAAQ,CACN,IAAO,CACLc,QAAS,kBACTd,OAAQ,CACN,YAAe,QACf,UAAa,iBAGjB,aAAc,CACZc,QAAS,sCACTd,OAAQ,CACN,YAAe,CAAC,KAAM,CACpBc,QAAS,mBACTC,YAAY,MAIlB,YAAe,OACf,YAAa,CACXD,QAAS,YACTd,OAAQ,CACN,UAAa,mBAKrB,OAAU,qBAEZhuB,EAAMyB,UAAUuuB,OAAY,IAAEhC,OAAO,cAAcA,OAAe,OAAIhuB,EAAMyB,UAAUuuB,OAAe,OAErGhwB,EAAMyvB,MAAMzuB,IAAI,QAAQ,SAAUutB,GACf,WAAbA,EAAIzyB,OACNyyB,EAAIuB,WAAkB,MAAIvB,EAAI1tB,QAAQ5P,QAAQ,QAAS,SAG3D6J,OAAOC,eAAeiF,EAAMyB,UAAUuuB,OAAOJ,IAAK,aAAc,CAY9Dl2B,MAAO,SAAoBu2B,EAASnC,GAClC,IAAIoC,EAAsB,GAC1BA,EAAoB,YAAcpC,GAAQ,CACxCgB,QAAS,oCACTC,YAAY,EACZf,OAAQhuB,EAAMyB,UAAUqsB,IAE1BoC,EAA2B,MAAI,uBAC/B,IAAIlC,EAAS,CACX,iBAAkB,CAChBc,QAAS,4BACTd,OAAQkC,IAGZlC,EAAO,YAAcF,GAAQ,CAC3BgB,QAAS,UACTd,OAAQhuB,EAAMyB,UAAUqsB,IAE1B,IAAIqC,EAAM,GACVA,EAAIF,GAAW,CACbnB,QAASM,OAAO,mEAAmE5uB,OAAOvP,QAAQ,MAAOg/B,GAAU,KACnHlB,YAAY,EACZC,QAAQ,EACRhB,OAAQA,GAEVhuB,EAAMyB,UAAUssB,aAAa,SAAU,QAASoC,MAGpDnwB,EAAMyB,UAAU2uB,IAAMpwB,EAAMyB,UAAUmsB,OAAO,SAAU,IACvD5tB,EAAMyB,UAAU4uB,KAAOrwB,EAAMyB,UAAUuuB,OACvChwB,EAAMyB,UAAU6uB,OAAStwB,EAAMyB,UAAUuuB,OACzChwB,EAAMyB,UAAU8uB,IAAMvwB,EAAMyB,UAAUuuB,OAGtC,SAAWhwB,GAKT,IAAIwwB,EAAU,0oCACVC,EAAe,CACjB,YAAe,CACb3B,QAASM,OAAO,MAAQoB,GACxB9sB,MAAO,YAET,SAAY,CACZ,CACEorB,QAAS,sBACTE,QAAQ,EACRhB,OAAQ,CAEN,SAAY,CAAC,CACXc,QAAS,uBACTC,YAAY,GACX,WACH,OAAU,0DAEV,SAAY,6FAEZ,YAAe,oBAGnB,CACED,QAAS,qCACTE,QAAQ,EACRhB,OAAQ,CACN,SAAY,oBAGhB,CACEc,QAAS,cACTE,QAAQ,EACRhB,OAAQ,CACN,SAAY,mCACZ,YAAe,SACf,YAAe,CACbc,QAASM,OAAO,QAAUoB,GAC1BzB,YAAY,EACZrrB,MAAO,cAGV,sBAEH,OAAU,wFAEZ1D,EAAMyB,UAAUivB,KAAO,CACrB,QAAW,CACT5B,QAAS,aACTprB,MAAO,aAET,QAAW,CACTorB,QAAS,kBACTC,YAAY,GAEd,gBAAiB,CAIjB,CAEED,QAAS,+CACTC,YAAY,EACZrrB,MAAO,YACN,CAEDorB,QAAS,2BACTprB,MAAO,aAGT,gBAAiB,CACforB,QAAS,sCACTprB,MAAO,WACPqrB,YAAY,GAId,cAAe,CACbD,QAAS,gCACTd,OAAQ,CACN,YAAe,CACbc,QAASM,OAAO,uBAAyBoB,GACzCzB,YAAY,EACZrrB,MAAO,aAGXA,MAAO,WACPqrB,YAAY,GAEd,OAAU,CACV,CACED,QAAS,qEACTC,YAAY,EACZC,QAAQ,EACRhB,OAAQyC,GAGV,CACE3B,QAAS,4EACTC,YAAY,EACZC,QAAQ,GAEV,CACEF,QAAS,wDACTE,QAAQ,EACRhB,OAAQyC,IAEV,YAAe,CACb3B,QAASM,OAAO,OAASoB,GACzB9sB,MAAO,YAET,SAAY+sB,EAAaE,SACzB,SAAY,CACV7B,QAAS,2/CACTC,YAAY,GAEd,QAAW,CACTD,QAAS,gHACTC,YAAY,GAGd,QAAW,CACTD,QAAS,6SACTC,YAAY,EAEZrrB,MAAO,cAET,QAAW,CACTorB,QAAS,iDACTC,YAAY,GAEd,kBAAmB,CACjBD,QAAS,UACTprB,MAAO,aAET,SAAY,CAEVorB,QAAS,6EACTd,OAAQ,CACN,kBAAmB,CACjBc,QAAS,MACTprB,MAAO,eAIb,YAAe,iCACf,OAAU,CACRorB,QAAS,qCACTC,YAAY,IAQhB,IAHA,IAAI6B,EAAa,CAAC,UAAW,gBAAiB,gBAAiB,cAAe,SAAU,cAAe,WAAY,UAAW,UAAW,UAAW,kBAAmB,WAAY,cAAe,UAC9L5C,EAASyC,EAAaE,SAAS,GAAG3C,OAE7BrwB,EAAI,EAAGA,EAAIizB,EAAW30B,OAAQ0B,IACrCqwB,EAAO4C,EAAWjzB,IAAMqC,EAAMyB,UAAUivB,KAAKE,EAAWjzB,IAG1DqC,EAAMyB,UAAUovB,MAAQ7wB,EAAMyB,UAAUivB,KArK1C,CAsKG1wB,GAIHA,EAAMyB,UAAUqvB,MAAQ,CACtB,QAAW,CAAC,CACVhC,QAAS,kCACTC,YAAY,GACX,CACDD,QAAS,mBACTC,YAAY,EACZC,QAAQ,IAEV,OAAU,CACRF,QAAS,iDACTE,QAAQ,GAEV,aAAc,CACZF,QAAS,iGACTC,YAAY,EACZf,OAAQ,CACN+C,YAAa,UAGjB,QAAW,6GACX,QAAW,qBACX,SAAY,YACZ,OAAU,wDACV,SAAY,0DACZ,YAAe,iBAIjB/wB,EAAMyB,UAAUuvB,EAAIhxB,EAAMyB,UAAUmsB,OAAO,QAAS,CAClD,aAAc,CACZkB,QAAS,4BACTC,YAAY,GAEd,QAAW,sUACX,SAAY,kDACZ,OAAU,0GAEZ/uB,EAAMyB,UAAUssB,aAAa,IAAK,SAAU,CAC1C,MAAS,CAGPe,QAAS,qDACTC,YAAY,EACZrrB,MAAO,WACPsqB,OAAQ,CAEN,OAAU,CACRc,QAAS,8CACTC,YAAY,GAGd,UAAa,CACXD,QAAS,4GACTC,YAAY,EACZrrB,MAAO,aAKb,SAAY,sIAEP1D,EAAMyB,UAAUuvB,EAAW,QAGlChxB,EAAMyB,UAAUwvB,IAAMjxB,EAAMyB,UAAUmsB,OAAO,IAAK,CAChD,aAAc,CACZkB,QAAS,kCACTC,YAAY,GAEd,QAAW,8lBACX,OAAU,CACRD,QAAS,qIACTE,QAAQ,GAEV,SAAY,iHACZ,QAAW,uBAEbhvB,EAAMyB,UAAUssB,aAAa,MAAO,SAAU,CAC5C,aAAc,CACZe,QAAS,oCACTprB,MAAO,SACPsrB,QAAQ,KAKZ,SAAWhvB,GACT,IAAI9M,EAAS,gDACb8M,EAAMyB,UAAUinB,IAAM,CACpB,QAAW,mBACX,OAAU,CACRoG,QAAS,iCACTd,OAAQ,CACN,KAAQ,YAIZ,IAAO,CACLc,QAASM,OAAO,YAAcl8B,EAAOsN,OAAS,kBAAmB,KACjEwtB,OAAQ,CACN,SAAY,QACZ,YAAe,YAGnB,SAAYoB,OAAO,wBAA0Bl8B,EAAOsN,OAAS,kBAC7D,OAAU,CACRsuB,QAAS57B,EACT87B,QAAQ,GAEV,SAAY,+CACZ,UAAa,gBACb,SAAY,oBACZ,YAAe,aAEjBhvB,EAAMyB,UAAUinB,IAAY,OAAEsF,OAAO72B,KAAO6I,EAAMyB,UAAUinB,IAC5D,IAAIsH,EAAShwB,EAAMyB,UAAUuuB,OAEzBA,IACFA,EAAOJ,IAAIsB,WAAW,QAAS,OAC/BlxB,EAAMyB,UAAUssB,aAAa,SAAU,aAAc,CACnD,aAAc,CACZe,QAAS,6CACTd,OAAQ,CACN,YAAa,CACXc,QAAS,aACTd,OAAQgC,EAAOJ,IAAI5B,QAErB,YAAe,wBACf,aAAc,CACZc,QAAS,MACTd,OAAQhuB,EAAMyB,UAAUinB,MAG5BhlB,MAAO,iBAERssB,EAAOJ,MAjDd,CAmDG5vB,GAIHA,EAAMyB,UAAUinB,IAAIyI,SAAW,CAC7BrC,QAAS9uB,EAAMyB,UAAUinB,IAAIyI,SAC7BnD,OAAQ,CACN,iBAAkB,+DAClB,eAAgB,UAChB,MAAS,aACT,GAAM,YACN,UAAa,CACXc,QAAS,kEACTE,QAAQ,EACRhB,OAAQ,CACN,YAAe,UACf,mBAAoB,CAClBc,QAAS,aACTC,YAAY,EACZrrB,MAAO,WAET,UAAa,CACXorB,QAAS,kCACTC,YAAY,EACZf,OAAQ,CACN,YAAe,QAGnB,UAAa,CACXc,QAAS,0BACTC,YAAY,GAEd,MAAS,CAAC,gDAAiD,CACzDD,QAAS,kCACTC,YAAY,IAEd,SAAY,cAGhB,OAAQ,CAAC,CACPD,QAAS,kDACTC,YAAY,EACZf,OAAQ,CACN,OAAU,SACV,SAAY,SAEb,CACDc,QAAS,gCACTC,YAAY,IAEd,YAAe,SAGnB/uB,EAAMyB,UAAUssB,aAAa,MAAO,WAAY,CAC9C,SAAY,CACVe,QAAS,8DACTC,YAAY,KAGhB/uB,EAAMyB,UAAUssB,aAAa,MAAO,WAAY,CAC9C,SAAY,CACVe,QAAS,qBACTC,YAAY,GAEd,QAAW,iBACX,OAAU,kBACV,KAAQ,CACND,QAAS,mBACTC,YAAY,GAEd,OAAU,aAIZ/uB,EAAMyB,UAAU2vB,WAAapxB,EAAMyB,UAAUmsB,OAAO,QAAS,CAC3D,aAAc,CAAC5tB,EAAMyB,UAAUqvB,MAAM,cAAe,CAClDhC,QAAS,0FACTC,YAAY,IAEd,QAAW,CAAC,CACVD,QAAS,kCACTC,YAAY,GACX,CACDD,QAAS,6WACTC,YAAY,IAEd,OAAU,gOAEV,SAAY,oFACZ,SAAY,mGAEd/uB,EAAMyB,UAAU2vB,WAAW,cAAc,GAAGtC,QAAU,uEACtD9uB,EAAMyB,UAAUssB,aAAa,aAAc,UAAW,CACpD,MAAS,CACPe,QAAS,2HACTC,YAAY,EACZC,QAAQ,GAGV,oBAAqB,CACnBF,QAAS,gKACTprB,MAAO,YAET,UAAa,CAAC,CACZorB,QAAS,wGACTC,YAAY,EACZf,OAAQhuB,EAAMyB,UAAU2vB,YACvB,CACDtC,QAAS,gDACTd,OAAQhuB,EAAMyB,UAAU2vB,YACvB,CACDtC,QAAS,oDACTC,YAAY,EACZf,OAAQhuB,EAAMyB,UAAU2vB,YACvB,CACDtC,QAAS,qcACTC,YAAY,EACZf,OAAQhuB,EAAMyB,UAAU2vB,aAE1B,SAAY,8BAEdpxB,EAAMyB,UAAUssB,aAAa,aAAc,SAAU,CACnD,kBAAmB,CACjBe,QAAS,oEACTE,QAAQ,EACRhB,OAAQ,CACN,uBAAwB,CACtBc,QAAS,QACTprB,MAAO,UAET,cAAiB,CACforB,QAAS,6DACTC,YAAY,EACZf,OAAQ,CACN,4BAA6B,CAC3Bc,QAAS,UACTprB,MAAO,eAETvM,KAAM6I,EAAMyB,UAAU2vB,aAG1B,OAAU,cAKZpxB,EAAMyB,UAAUuuB,QAClBhwB,EAAMyB,UAAUuuB,OAAOJ,IAAIsB,WAAW,SAAU,cAGlDlxB,EAAMyB,UAAU4vB,GAAKrxB,EAAMyB,UAAU2vB,WAGrC,SAAWpxB,GACT,IAAIoxB,EAAapxB,EAAMstB,KAAKG,MAAMztB,EAAMyB,UAAU2vB,YAClDpxB,EAAMyB,UAAU6vB,IAAMtxB,EAAMyB,UAAUmsB,OAAO,SAAUwD,GACvDpxB,EAAMyB,UAAU6vB,IAAI1B,IAAId,QAAU,4LAClC9uB,EAAMyB,UAAU6vB,IAAI1B,IAAI5B,OAAY,IAAEc,QAAU,kBAChD9uB,EAAMyB,UAAU6vB,IAAI1B,IAAI5B,OAAO,cAAcc,QAAU,yDACvD9uB,EAAMyB,UAAU6vB,IAAI1B,IAAI5B,OAAY,IAAEA,OAAO,cAAgB,4BAC7DhuB,EAAMyB,UAAUssB,aAAa,SAAU,YAAa,CAClD,OAAU,CACRe,QAAS,6CACTd,OAAQ,CACN,YAAe,cACf,aAAc,SAGjBhuB,EAAMyB,UAAU6vB,IAAI1B,KACvB5vB,EAAMyB,UAAUssB,aAAa,SAAU,aAAc,CACnD,OAAU,CAERe,QAAS,4CACTd,OAAQ,CACN,qBAAsB,CACpBc,QAAS,UACTprB,MAAO,eAETvM,KAAM6I,EAAMyB,UAAU6vB,KAExB,MAAS,wBAEVtxB,EAAMyB,UAAU6vB,IAAI1B,KAEvB,IAAI2B,EAAiB,SAASA,EAAe3uB,GAC3C,OAAKA,EAIgB,iBAAVA,EACFA,EAGoB,iBAAlBA,EAAM/B,QACR+B,EAAM/B,QAGR+B,EAAM/B,QAAQhC,IAAI0yB,GAAgBn9B,KAAK,IAXrC,IA6EX4L,EAAMyvB,MAAMzuB,IAAI,kBAAkB,SAAUutB,GACrB,QAAjBA,EAAIptB,UAAuC,QAAjBotB,EAAIptB,UAhEnB,SAASqwB,EAAWruB,GAGnC,IAFA,IAAIsuB,EAAa,GAER9zB,EAAI,EAAGA,EAAIwF,EAAOlH,OAAQ0B,IAAK,CACtC,IAAIiF,EAAQO,EAAOxF,GACf+zB,GAAiB,EA+BrB,GA7BqB,iBAAV9uB,IACU,QAAfA,EAAM9G,MAAkB8G,EAAM/B,QAAQ,IAAgC,QAA1B+B,EAAM/B,QAAQ,GAAG/E,KAEnB,OAAxC8G,EAAM/B,QAAQ,GAAGA,QAAQ,GAAGA,QAE1B4wB,EAAWx1B,OAAS,GAAKw1B,EAAWA,EAAWx1B,OAAS,GAAGg0B,UAAYsB,EAAe3uB,EAAM/B,QAAQ,GAAGA,QAAQ,KAEjH4wB,EAAW3tB,MAG2C,OAApDlB,EAAM/B,QAAQ+B,EAAM/B,QAAQ5E,OAAS,GAAG4E,SAE1C4wB,EAAWvgC,KAAK,CACd++B,QAASsB,EAAe3uB,EAAM/B,QAAQ,GAAGA,QAAQ,IACjD8wB,aAAc,IAIXF,EAAWx1B,OAAS,GAAoB,gBAAf2G,EAAM9G,MAA4C,MAAlB8G,EAAM/B,QAExE4wB,EAAWA,EAAWx1B,OAAS,GAAG01B,eACzBF,EAAWx1B,OAAS,GAAKw1B,EAAWA,EAAWx1B,OAAS,GAAG01B,aAAe,GAAoB,gBAAf/uB,EAAM9G,MAA4C,MAAlB8G,EAAM/B,QAE9H4wB,EAAWA,EAAWx1B,OAAS,GAAG01B,eAElCD,GAAiB,IAIjBA,GAAmC,iBAAV9uB,IACvB6uB,EAAWx1B,OAAS,GAAwD,IAAnDw1B,EAAWA,EAAWx1B,OAAS,GAAG01B,aAAoB,CAGjF,IAAIC,EAAYL,EAAe3uB,GAE3BjF,EAAIwF,EAAOlH,OAAS,IAA+B,iBAAlBkH,EAAOxF,EAAI,IAA0C,eAAvBwF,EAAOxF,EAAI,GAAG7B,QAC/E81B,GAAaL,EAAepuB,EAAOxF,EAAI,IACvCwF,EAAOmC,OAAO3H,EAAI,EAAG,IAGnBA,EAAI,IAA+B,iBAAlBwF,EAAOxF,EAAI,IAA0C,eAAvBwF,EAAOxF,EAAI,GAAG7B,QAC/D81B,EAAYL,EAAepuB,EAAOxF,EAAI,IAAMi0B,EAC5CzuB,EAAOmC,OAAO3H,EAAI,EAAG,GACrBA,KAGFwF,EAAOxF,GAAK,IAAIqC,EAAMqtB,MAAM,aAAcuE,EAAW,KAAMA,GAI3DhvB,EAAM/B,SAAoC,iBAAlB+B,EAAM/B,SAChC2wB,EAAW5uB,EAAM/B,UAUrB2wB,CAAWjD,EAAIprB,WAnHnB,CAqHGnD,GAIH,SAAWA,GACT,IAAI6xB,EAAc7xB,EAAMyB,UAAUqwB,YAAc,CAC9C,UAAa,CACXhD,QAAS,8DACTC,YAAY,GAEd,QAAW,CAGTD,QAAS,qDACTC,YAAY,GAEd,YAAe,QA2EjBj0B,OAAOC,eAAe82B,EAAa,aAAc,CAC/Cn4B,MAjBF,SAAoB+H,EAAWswB,GACJ,iBAAdtwB,IACTA,EAAY,CAACA,IAGfA,EAAUrL,SAAQ,SAAU03B,IAvD9B,SAA2BA,EAAMM,GAC/B,IACIlrB,EAAUlD,EAAMyB,UAAUqsB,GAE9B,GAAK5qB,EAAL,CAIA,IAAIN,EAAQM,EAPI,eAShB,IAAKN,EAAO,CAEV,IAAIqZ,EAAa,CACjB,cAAwB,CACtB6S,QAAS,wCACTprB,MAAO,YAGTd,GADAM,EAAUlD,EAAMyB,UAAUssB,aAAaD,EAAM,UAAW7R,IAhB1C,eA2BhB,GAPIrZ,aAAiBwsB,SAEnBxsB,EAAQM,EAtBM,eAsBe,CAC3B4rB,QAASlsB,IAIToF,MAAM+I,QAAQnO,GAChB,IAAK,IAAIjF,EAAI,EAAGmY,EAAIlT,EAAM3G,OAAQ0B,EAAImY,EAAGnY,IACnCiF,EAAMjF,aAAcyxB,SACtBxsB,EAAMjF,GAAK,CACTmxB,QAASlsB,EAAMjF,KAInBywB,EAASxrB,EAAMjF,SAGjBywB,EAASxrB,IAiBTovB,CAAkBlE,GAAM,SAAUgB,GAC3BA,EAAQd,SACXc,EAAQd,OAAS,IAGnBc,EAAQd,OAAO72B,KAAO46B,WAQ5BF,EAAYI,WAAW,CAAC,OAAQ,aAAc,OAAQJ,GA1FxD,CA2FG7xB,GAIH,SAAWA,GACT,IAAIkyB,EAAW,0aAEXj+B,EAAY,4BAChB+L,EAAMyB,UAAU0wB,KAAOnyB,EAAMyB,UAAUmsB,OAAO,QAAS,CACrD,aAAc,CAAC35B,EAEf,mCACA,QAAWi+B,EACX,SAAY,CAAClyB,EAAMyB,UAAUqvB,MAAMsB,SAAU,CAC3CtD,QAAS,kBACTC,YAAY,IAEd,OAAU,mHACV,SAAY,CACVD,QAAS,gEACTC,YAAY,KAGhB/uB,EAAMyB,UAAUssB,aAAa,OAAQ,aAAc,CACjD,WAAc,CACZrqB,MAAO,cACPorB,QAAS,eACTC,YAAY,GAEd,UAAa,CACXD,QAAS,mIACTC,YAAY,EACZf,OAAQ,CACN,YAAe,OAGnB,SAAY,CACVc,QAAS,sEACTd,OAAQ,CACN,aAAc/5B,EACd,QAAWi+B,EACX,YAAe,YACf,SAAY,YAtCpB,CA0CGlyB,GAIH,SAAWA,GAQT,SAASqyB,EAAelxB,EAAUuI,GAChC,MAAO,MAAQvI,EAASmxB,cAAgB5oB,EAAQ,MAGlD5O,OAAOsL,iBAAiBpG,EAAMyB,UAAU,qBAAuB,GAAI,CACjE8wB,kBAAmB,CAYjB74B,MAAO,SAAe60B,EAAKptB,EAAUqxB,EAAoBC,GACvD,GAAIlE,EAAIptB,WAAaA,EAArB,CAIA,IAAIuxB,EAAanE,EAAImE,WAAa,GAClCnE,EAAItrB,KAAOsrB,EAAItrB,KAAKhS,QAAQuhC,GAAoB,SAAUld,GACxD,GAA6B,mBAAlBmd,IAAiCA,EAAcnd,GACxD,OAAOA,EAMT,IAHA,IACIqd,EADAh1B,EAAI+0B,EAAWz2B,QAGqD,IAAjEsyB,EAAItrB,KAAKjB,QAAQ2wB,EAAcN,EAAelxB,EAAUxD,OAC3DA,EAKJ,OADA+0B,EAAW/0B,GAAK2X,EACTqd,KAGTpE,EAAIrrB,QAAUlD,EAAMyB,UAAUuuB,UAGlC4C,qBAAsB,CAOpBl5B,MAAO,SAAe60B,EAAKptB,GACzB,GAAIotB,EAAIptB,WAAaA,GAAaotB,EAAImE,WAAtC,CAKAnE,EAAIrrB,QAAUlD,EAAMyB,UAAUN,GAC9B,IAAI0tB,EAAI,EACJtxB,EAAOzC,OAAOyC,KAAKgxB,EAAImE,aAE3B,SAASlB,EAAWruB,GAClB,IAAK,IAAIxF,EAAI,EAAGA,EAAIwF,EAAOlH,UAErB4yB,GAAKtxB,EAAKtB,QAFmB0B,IAAK,CAMtC,IAAIiF,EAAQO,EAAOxF,GAEnB,GAAqB,iBAAViF,GAAsBA,EAAM/B,SAAoC,iBAAlB+B,EAAM/B,QAAsB,CACnF,IAAIkB,EAAIxE,EAAKsxB,GACTgE,EAAItE,EAAImE,WAAW3wB,GACnB+wB,EAAqB,iBAAVlwB,EAAqBA,EAAQA,EAAM/B,QAC9C8xB,EAAcN,EAAelxB,EAAUY,GACvC2H,EAAQopB,EAAE9wB,QAAQ2wB,GAEtB,GAAIjpB,GAAS,EAAG,GACZmlB,EACF,IAAIZ,EAAS6E,EAAE5f,UAAU,EAAGxJ,GACxBqpB,EAAS,IAAI/yB,EAAMqtB,MAAMlsB,EAAUnB,EAAMgE,SAAS6uB,EAAGtE,EAAIrrB,SAAU,YAAc/B,EAAU0xB,GAC3FtD,EAAQuD,EAAE5f,UAAUxJ,EAAQipB,EAAY12B,QACxC+2B,EAAc,GAEd/E,GACF+E,EAAY9hC,KAAKuP,MAAMuyB,EAAaxB,EAAW,CAACvD,KAGlD+E,EAAY9hC,KAAK6hC,GAEbxD,GACFyD,EAAY9hC,KAAKuP,MAAMuyB,EAAaxB,EAAW,CAACjC,KAG7B,iBAAV3sB,EACTO,EAAOmC,OAAO7E,MAAM0C,EAAQ,CAACxF,EAAG,GAAGH,OAAOw1B,IAE1CpwB,EAAM/B,QAAUmyB,QAGXpwB,EAAM/B,SAGb2wB,EAAW5uB,EAAM/B,SAIvB,OAAOsC,EAGTquB,CAAWjD,EAAIprB,aArHvB,CAyHGnD,GAiBH,SAAWA,GACTA,EAAMyB,UAAUwxB,IAAMjzB,EAAMyB,UAAUmsB,OAAO,QAAS,CACpD,QAAW,ueACX,QAAW,CACTkB,QAAS,sBACTprB,MAAO,YAET,SAAY,CAAC,uBAAwB,iBACrC,QAAW,CACTorB,QAAS,uCACTC,YAAY,KAGhB/uB,EAAMyB,UAAUssB,aAAa,MAAO,SAAU,CAC5C,gBAAiB,CACfe,QAAS,eACTC,YAAY,EACZrrB,MAAO,aAGX1D,EAAMyB,UAAUssB,aAAa,MAAO,UAAW,CAC7C,UAAa,CACXe,QAAS,6BACTprB,MAAO,eAGX1D,EAAMyB,UAAUssB,aAAa,MAAO,UAAW,CAC7C,SAAY,sBACZ,QAAW,CACTe,QAAS,kCACTC,YAAY,EACZf,OAAQ,CACN+C,YAAa,SAKnB/wB,EAAMyB,UAAUssB,aAAa,MAAO,WAAY,CAC9C,SAAY,CACVe,QAAS,YACTC,YAAY,KAGhB,IAAImE,EAAuB,CACzBpE,QAAS,6EACTC,YAAY,EACZf,OAAQ,CACN72B,KAAM6I,EAAMyB,UAAUwxB,MAG1BjzB,EAAMyB,UAAUssB,aAAa,MAAO,SAAU,CAC5C,gBAAiB,CACfe,QAAS,kDACTE,QAAQ,EACRtrB,MAAO,SACPsqB,OAAQ,CACN,UAAa,CACXc,QAAS,2BACTprB,MAAO,SACPsqB,OAAQ,CACN,YAAe,mBAKvB,iBAAkB,CAChBc,QAAS,sGACTE,QAAQ,EACRtrB,MAAO,SACPsqB,OAAQ,CACN,UAAa,CACXc,QAAS,yCACTprB,MAAO,SACPsqB,OAAQ,CACN,YAAe,iBAGnB,cAAiBkF,IAIrB,uBAAwB,CACtBpE,QAAS,yBACTE,QAAQ,EACRtrB,MAAO,UAET,uBAAwB,CACtBorB,QAAS,yBACTE,QAAQ,EACRtrB,MAAO,SACPsqB,OAAQ,CACN,cAAiBkF,aAMhBlzB,EAAMyB,UAAUwxB,IAAY,OACnCjzB,EAAMyvB,MAAMzuB,IAAI,mBAAmB,SAAUutB,GAC3C,GAAK,MAAM1hB,KAAK0hB,EAAItrB,MAApB,CAKAjD,EAAMyB,UAAU,qBAAqB8wB,kBAAkBhE,EAAK,MAD3C,sIAGnBvuB,EAAMyvB,MAAMzuB,IAAI,kBAAkB,SAAUutB,GAC1CvuB,EAAMyB,UAAU,qBAAqBmxB,qBAAqBrE,EAAK,UA3GnE,CA6GGvuB,GAIH,SAAWA,GACT,IAAIoxB,EAAapxB,EAAMyB,UAAU2vB,WAC7Bt1B,EAAO,qCAAqC0E,OAC5C2yB,EAAkB,2CAA6Cr3B,EAAO,UAC1EkE,EAAMyB,UAAU2xB,MAAQpzB,EAAMyB,UAAUmsB,OAAO,cAAe,CAC5D,UAAa,CAEXkB,QAASM,OAAO+D,EAAkB,6BAA6B3yB,QAC/DuuB,YAAY,EACZf,OAAQ,CACN,YAAe,SAIrBhuB,EAAMyB,UAAUssB,aAAa,QAAS,UAAW,CAC/C,qBAAsB,CAEpBe,QAASM,OAAO+D,EAAkB,8CAA8C3yB,QAChFuuB,YAAY,EACZf,OAAQ,CACN,UAAa,CACXc,QAAS,2BACTC,YAAY,EACZf,OAAQ,CACN,YAAe,OAGnB,KAAQ,CACNc,QAAS,oBACTC,YAAY,EACZf,OAAQoD,EACR1tB,MAAO,uBAET,YAAe,WAGnB,aAAc,CAAC,CACborB,QAASM,OAAO,gBAAkBtzB,GAClCizB,YAAY,EACZf,OAAQ,CACN,YAAe,sBAEhB,CACDc,QAAS,oFACTC,YAAY,EACZf,OAAQ,CACN,YAAe,QAGnB,QAAW,CACTc,QAAS,mDACTC,YAAY,EACZf,OAAQ,CACN,KAAQ,CACNc,QAAS,uBACTC,YAAY,EACZf,OAAQoD,EACR1tB,MAAO,2BAKf1D,EAAMyB,UAAUqwB,YAAYG,WAAW,aAAcjyB,EAAMyB,UAAU2xB,OA9DvE,CA+DGpzB,GAIHA,EAAMyB,UAAU4xB,aAAerzB,EAAMyB,UAAUmsB,OAAO,aAAc,CAClE,QAAW,8UACX,SAAY,8DAEd5tB,EAAMyB,UAAU4xB,aAAa,cAAc3vB,MAAQ,WAE/C1D,EAAMyB,UAAUuuB,QAClBhwB,EAAMyB,UAAUssB,aAAa,eAAgB,SAAU,CACrD,IAAO,CACLe,QAAS,4EACTC,YAAY,EACZf,OAAQ,CACN72B,KAAM6I,EAAMyB,UAAUuuB,WAQ9B,SAAWhwB,GAET,IAAIszB,EAAU,YACVnW,EAAgB,CAClB2R,QAAS,aACTprB,MAAO,YAET1D,EAAMyB,UAAU8xB,aAAevzB,EAAMyB,UAAUmsB,OAAO,aAAc,CAClE,QAAW0F,EACX,OAAU,CACV,CACExE,QAAS,yBACTE,QAAQ,GACP,CAEDF,QAAS,yBACTE,QAAQ,EACRhB,OAAQ,CACN,cAAiB7Q,KAGrB,QAAW,mSACX,eAAgB,CACd2R,QAAS,aACTprB,MAAO,cAGX1D,EAAMyB,UAAUssB,aAAa,eAAgB,UAAW,CACtD,oBAAqB,CACnBe,QAAS,iBACTprB,MAAO,WAGT,cAAe,CACborB,QAAS,qBACTprB,MAAO,QACPsqB,OAAQ,CACN,QAAWsF,EACX,cAAiBnW,MAIvBnd,EAAMyB,UAAUssB,aAAa,eAAgB,SAAU,CACrD,oBAAqB,CACnBe,QAAS,yBACTd,OAAQ,CACN,UAAa,CACXc,QAAS,QACTprB,MAAO,eAETvM,KAAM6I,EAAMyB,UAAU2vB,aAI1B,mBAAoB,CAAC,CACnBtC,QAAS,iBACTE,QAAQ,EACRtrB,MAAO,UACN,CACDorB,QAAS,iBACTE,QAAQ,EACRtrB,MAAO,SACPsqB,OAAQ,CACN7Q,cAAeA,OAIrBnd,EAAMyB,UAAUssB,aAAa,eAAgB,UAAW,CAEtD,SAAY,kCAEP/tB,EAAMyB,UAAU8xB,aAAa,mBACpCvzB,EAAMyB,UAAU+xB,OAASxzB,EAAMyB,UAAU8xB,aAxE3C,CAyEGvzB,GAIH,SAAWA,GACTA,EAAMyB,UAAUssB,aAAa,aAAc,oBAAqB,CAC9D,kBAAmB,CACjBe,QAASM,OAAO,YAAcpvB,EAAMyB,UAAU2vB,WAAW,qBAAqBtC,QAAQtuB,QACtFuuB,YAAY,EACZrrB,MAAO,CAAC,oBAAqB,SAAU,WAAY,sBAGvD1D,EAAMyB,UAAUssB,aAAa,aAAc,WAAY,CACrD,OAAU,CACRe,QAASM,OAAO,YAAcpvB,EAAMyB,UAAU2vB,WAAqB,SAAE5wB,QACrEuuB,YAAY,EACZrrB,MAAO,CAAC,WAAY,sBAGxB1D,EAAMyB,UAAUssB,aAAa,aAAc,WAAY,CACrD,mBAAoB,CAAC,CAGnBe,QAAS,yOACTprB,MAAO,cACN,CAEDorB,QAAS,wBACTprB,MAAO,iBAGX1D,EAAMyB,UAAU2vB,WAAoB,QAAE1M,QAAQ,CAC5CoK,QAAS,wCACTprB,MAAO,UACN,CACDorB,QAAS,WACTprB,MAAO,CAAC,OAAQ,QACf,CACDorB,QAAS,gBACTprB,MAAO,QAET1D,EAAMyB,UAAUssB,aAAa,aAAc,WAAY,CACrD,OAAU,CACRe,QAAS,QACTprB,MAAO,YAET,MAAS,CACPorB,QAAS,KACTprB,MAAO,cAGX1D,EAAMyB,UAAUssB,aAAa,aAAc,cAAe,CACxD,kBAAmB,CACjBe,QAAS,kDACTC,YAAY,GAEd,mBAAoB,CAClBD,QAAS,8CACTC,YAAY,GAEd,IAAO,CAELD,QAAS,kFACTprB,MAAO,YAET,QAAW,CACTorB,QAAS,qBACTprB,MAAO,gBAMX,IAFA,IAAI+vB,EAAuB,CAAC,WAAY,oBAAqB,SAAU,kBAAmB,mBAEjF91B,EAAI,EAAGA,EAAI81B,EAAqBx3B,OAAQ0B,IAAK,CACpD,IAAIiF,EAAQ6wB,EAAqB91B,GAC7BjE,EAAQsG,EAAMyB,UAAU2vB,WAAWxuB,GAER,WAA3B5C,EAAMstB,KAAKxxB,KAAKpC,KAClBA,EAAQsG,EAAMyB,UAAU2vB,WAAWxuB,GAAS,CAC1CksB,QAASp1B,IAKb,IAAIs0B,EAASt0B,EAAMs0B,QAAU,GAC7Bt0B,EAAMs0B,OAASA,EACfA,EAAO,oBAAsB,iBAlFjC,CAoFGhuB,GAIH,SAAWA,GACTA,EAAMyB,UAAUiyB,KAAO1zB,EAAMyB,UAAUmsB,OAAO,aAAc,IAC5D5tB,EAAMyB,UAAUssB,aAAa,OAAQ,UAAW,CAC9C,KAAQ,CAAC,CACPe,QAAS,sEACTprB,MAAO,UAGX1D,EAAMyB,UAAUiyB,KAAK,qBAAqB5E,QAAU,8IAC7C9uB,EAAMyB,UAAUiyB,KAAgB,UACvC1zB,EAAMyB,UAAUssB,aAAa,OAAQ,WAAY,CAC/C,mBAAoB,CAClBe,QAAS,YACTprB,MAAO,iBAINsE,MAAM+I,QAAQ/Q,EAAMyB,UAAUiyB,KAAKC,WACtC3zB,EAAMyB,UAAUiyB,KAAKC,QAAU,CAAC3zB,EAAMyB,UAAUiyB,KAAKC,UAGvD3zB,EAAMyB,UAAUiyB,KAAKC,QAAQjP,QAAQ,CACnCoK,QAAS,kDACTC,YAAY,GACX,CACDD,QAAS,wGACTC,YAAY,IA1BhB,CA4BG/uB,GAIHA,EAAMyB,UAAUmyB,KAAO5zB,EAAMyB,UAAUmsB,OAAO,aAAc,CAE1D,QAAW,oXAEb5tB,EAAMyB,UAAUssB,aAAa,OAAQ,WAAY,CAE/C,WAAc,CACZe,QAAS,QACTprB,MAAO,cAGX1D,EAAMyB,UAAUoyB,MAAQ7zB,EAAMyB,UAAUmyB,KAGxC5zB,EAAMyB,UAAUqyB,WAAa9zB,EAAMyB,UAAUmsB,OAAO,aAAc,CAEhE,QAAW,2YACX,QAAW,0FAEb5tB,EAAMyB,UAAUsyB,GAAK/zB,EAAMyB,UAAUqyB,WAGrC,SAAW9zB,GACT,IAAIg0B,EAAiBh0B,EAAMyB,UAAU2vB,WAAW,mBAE5C6C,EAAyBD,EAAelF,QAAQtuB,OAChD0zB,EAAsBF,EAAehG,OAAsB,cAC3DmG,EAAiCD,EAAoBlG,OAAO,6BAC5DoG,EAAuBF,EAAoBpF,QAAQtuB,OAavD,SAAS6zB,EAAelzB,EAAUyuB,GAChC,GAAK5vB,EAAMyB,UAAUN,GAIrB,MAAO,CACL2tB,QAASM,OAAO,OAASQ,EAAM,SAAWqE,GAC1ClF,YAAY,EACZC,QAAQ,EACRhB,OAAQ,CACN,uBAAwB,CACtBc,QAAS,QACTprB,MAAO,UAET,gBAAiB,CACforB,QAAS,UACTprB,MAAOvC,KAyBf,SAASkxB,EAAeiC,EAASnzB,GAC/B,MAAO,MAAQA,EAASmxB,cAAgB,IAAMgC,EAAU,MAY1D,SAASC,EAAkBtxB,EAAMC,EAAS/B,GACxC,IAAIotB,EAAM,CACRtrB,KAAMA,EACNC,QAASA,EACT/B,SAAUA,GAKZ,OAHAnB,EAAMyvB,MAAM+E,IAAI,kBAAmBjG,GACnCA,EAAIprB,OAASnD,EAAMgE,SAASuqB,EAAItrB,KAAMsrB,EAAIrrB,SAC1ClD,EAAMyvB,MAAM+E,IAAI,iBAAkBjG,GAC3BA,EAAIprB,OAUb,SAASsxB,EAAgCC,GACvC,IAAIC,EAAc,GAClBA,EAAY,6BAA+BR,EAG3C,IAAIhxB,EAASnD,EAAMgE,SAAS0wB,EAAYC,GAExC,GAAsB,IAAlBxxB,EAAOlH,OAAc,CASvB,IAAIkG,EAAO,CAAC,EAAG,GACfA,EAAKjR,KAAKuP,MAAM0B,EAAMoyB,EAAkBpxB,EAAO,GAAInD,EAAMyB,UAAU2vB,WAAY,eAC/EjuB,EAAOmC,OAAO7E,MAAM0C,EAAQhB,GAG9B,OAAO,IAAInC,EAAMqtB,MAAM,gBAAiBlqB,EAAQ+wB,EAAoBxwB,MAAOgxB,GAqB7E,SAASE,EAAiB3xB,EAAMC,EAAS/B,GAKvC,IAAI0zB,EAAU70B,EAAMgE,SAASf,EAAM,CACjC,cAAiB,CACf6rB,QAASM,OAAOgF,GAChBrF,YAAY,KAKZ+F,EAAqB,EAGrBC,EAAiB,GAiBjBC,EAAiBT,EAfFM,EAAQh2B,KAAI,SAAU+D,GACvC,GAAqB,iBAAVA,EACT,OAAOA,EAKP,IAHA,IACI+vB,EADAsC,EAA0BryB,EAAM/B,SAGmD,IAAhFoC,EAAKjB,QAAQ2wB,EAAcN,EAAeyC,IAAsB3zB,MAGvE,OADA4zB,EAAepC,GAAesC,EACvBtC,KAERv+B,KAAK,IAG6C8O,EAAS/B,GAE1D+zB,EAAep6B,OAAOyC,KAAKw3B,GA8D/B,OA7DAD,EAAqB,EAOrB,SAAStD,EAAWruB,GAClB,IAAK,IAAIxF,EAAI,EAAGA,EAAIwF,EAAOlH,OAAQ0B,IAAK,CACtC,GAAIm3B,GAAsBI,EAAaj5B,OACrC,OAGF,IAAI2G,EAAQO,EAAOxF,GAEnB,GAAqB,iBAAViF,GAA+C,iBAAlBA,EAAM/B,QAAsB,CAClE,IAAI8xB,EAAcuC,EAAaJ,GAC3BhC,EAAqB,iBAAVlwB,EAAqBA,EAEpCA,EAAM/B,QACF6I,EAAQopB,EAAE9wB,QAAQ2wB,GAEtB,IAAe,IAAXjpB,EAAc,GACdorB,EACF,IAAI7G,EAAS6E,EAAE5f,UAAU,EAAGxJ,GACxBqpB,EAAS0B,EAAgCM,EAAepC,IACxDpD,EAAQuD,EAAE5f,UAAUxJ,EAAQipB,EAAY12B,QACxC+2B,EAAc,GAQlB,GANI/E,GACF+E,EAAY9hC,KAAK+8B,GAGnB+E,EAAY9hC,KAAK6hC,GAEbxD,EAAO,CACT,IAAI4F,EAAc,CAAC5F,GACnBiC,EAAW2D,GACXnC,EAAY9hC,KAAKuP,MAAMuyB,EAAamC,GAGjB,iBAAVvyB,GACTO,EAAOmC,OAAO7E,MAAM0C,EAAQ,CAACxF,EAAG,GAAGH,OAAOw1B,IAC1Cr1B,GAAKq1B,EAAY/2B,OAAS,GAE1B2G,EAAM/B,QAAUmyB,OAGf,CACL,IAAInyB,EAAU+B,EAAM/B,QAEhBmH,MAAM+I,QAAQlQ,GAChB2wB,EAAW3wB,GAEX2wB,EAAW,CAAC3wB,MAMpB2wB,CAAWwD,GACJ,IAAIh1B,EAAMqtB,MAAMlsB,EAAU6zB,EAAgB,YAAc7zB,EAAU8B,GA9L3EjD,EAAMyB,UAAU2vB,WAAW,mBAAqB,CAIhDiD,EAAe,MAAO,0HAA0H7zB,QAEhJ6zB,EAAe,OAAQ,yCAAyC7zB,QAChE6zB,EAAe,MAAO,QAAQ7zB,QAC9B6zB,EAAe,WAAY,oBAAoB7zB,QAC/C6zB,EAAe,UAAW,6CAA6C7zB,QACvEwzB,GAAgB9/B,OAAOC,SA6LvB,IAAIihC,EAAqB,CACvB,YAAc,EACd,IAAM,EACN,YAAc,EACd,IAAM,EACN,KAAO,EACP,KAAO,GA8ET,SAASC,EAAc37B,GACrB,MAAqB,iBAAVA,EACFA,EACEsO,MAAM+I,QAAQrX,GAChBA,EAAMmF,IAAIw2B,GAAejhC,KAAK,IAE9BihC,EAAc37B,EAAMmH,SAlF/Bb,EAAMyvB,MAAMzuB,IAAI,kBAAkB,SAAUutB,GACpCA,EAAIptB,YAAYi0B,GAWtB,SAASE,EAAoBnyB,GAC3B,IAAK,IAAIxF,EAAI,EAAGmY,EAAI3S,EAAOlH,OAAQ0B,EAAImY,EAAGnY,IAAK,CAC7C,IAAIiF,EAAQO,EAAOxF,GAEnB,GAAqB,iBAAViF,EAAX,CAIA,IAAI/B,EAAU+B,EAAM/B,QAEpB,GAAKmH,MAAM+I,QAAQlQ,GAQnB,GAAmB,oBAAf+B,EAAM9G,KAA4B,CAepC,IAAIy5B,EAAW10B,EAAQ,GAEvB,GAAuB,IAAnBA,EAAQ5E,QAAoC,iBAAbs5B,GAA2C,kBAAlBA,EAASz5B,KAA0B,CAE7F,IAAImH,EAAOoyB,EAAcE,GACrB7xB,EAAQ6xB,EAAS7xB,MACjBvC,EAAW6G,MAAM+I,QAAQrN,GAASA,EAAM,GAAKA,EAC7CR,EAAUlD,EAAMyB,UAAUN,GAE9B,IAAK+B,EAEH,SAGFrC,EAAQ,GAAK+zB,EAAiB3xB,EAAMC,EAAS/B,SAG/Cm0B,EAAoBz0B,OAvCG,iBAAZA,GACTy0B,EAAoB,CAACz0B,MA2C7By0B,CAAoB/G,EAAIprB,WA3T5B,CA6UGnD,GAIHA,EAAMyB,UAAU+zB,QAAU,CACxB,QAAW,MACX,OAAU,CACR1G,QAAS,wBACTE,QAAQ,GAEV,OAAU,2CACV,QAAW,qBACX,SAAY,eACZ,UAAa,CACXF,QAAS,cACTprB,MAAO,YAET,YAAa,CACXorB,QAAS,+DACTE,QAAQ,GAEV,aAAc,CACZF,QAAS,wEACTC,YAAY,GAEd,SAAY,CACVD,QAAS,+CACTC,YAAY,EACZrrB,MAAO,YAET,QAAW,8FACX,SAAY,cACZ,YAAe,iBACf,SAAY,8BAId,SAAW1D,GAET,IAAIy1B,EAAQ,6CAA6Cj1B,OAazD,SAASk1B,EAAa5G,EAAS6G,GAO7B,OANA7G,EAAUA,EAAQ79B,QAAQ,WAAYwkC,GAElCE,IACF7G,EAAUA,EAAU,IAAMA,EAAQ79B,QAAQ,KAAM,QAG3Cm+B,OAAO,0BAA0B5uB,OAAS,MAAQsuB,EAAU,KAGrE,IAAI8G,EAAY,2CAA2Cp1B,OACvDq1B,EAAW,sCAAsCr1B,OAAOvP,QAAQ,MAAO2kC,GACvEE,EAAY,sEAAsEt1B,OACtFR,EAAMyB,UAAUs0B,SAAW/1B,EAAMyB,UAAUmsB,OAAO,SAAU,IAC5D5tB,EAAMyB,UAAUssB,aAAa,WAAY,SAAU,CACjD,WAAc,CAEZe,QAAS,kBACTprB,MAAO,eAET,MAAS,CACPorB,QAASM,OAAO,IAAMyG,EAAWC,EAAY,MAAQD,EAAW,KAAM,KACtE7H,OAAQ,CACN,kBAAmB,CACjBc,QAASM,OAAO,KAAOyG,EAAWC,EAAY,OAASD,EAAW,OAClE9G,YAAY,EACZf,OAAQ,CACN,aAAc,CACZc,QAASM,OAAOwG,GAChB5H,OAAQhuB,EAAMyB,UAAUs0B,UAE1B,YAAe,OAGnB,aAAc,CACZjH,QAASM,OAAO,KAAOyG,EAAW,IAAMC,EAAY,KACpD/G,YAAY,EACZf,OAAQ,CACN,YAAe,iBAGnB,mBAAoB,CAClBc,QAASM,OAAO,IAAMyG,EAAW,KACjC7H,OAAQ,CACN,eAAgB,CACdc,QAASM,OAAOwG,GAChBlyB,MAAO,YACPsqB,OAAQhuB,EAAMyB,UAAUs0B,UAE1B,YAAe,SAKvB,KAAQ,CAAC,CAEPjH,QAAS,oEACTC,YAAY,EACZrrB,MAAO,WACN,CAGDorB,QAAS,sBACTprB,MAAO,WACN,CAIDorB,QAAS,qBACTE,QAAQ,EACRhB,OAAQ,CACN,aAAc,CACZc,QAAS,qDACTC,YAAY,GAEd,gBAAiB,CACfD,QAAS,WACTC,YAAY,GAEd,YAAe,SAGnB,MAAS,CAAC,CAKRD,QAAS,0CACTprB,MAAO,YACPsqB,OAAQ,CACN+C,YAAa,cAEd,CAGDjC,QAAS,cACTC,YAAY,EACZrrB,MAAO,YACPsqB,OAAQ,CACN+C,YAAa,aAGjB,GAAM,CAKJjC,QAAS,wCACTC,YAAY,EACZrrB,MAAO,eAET,KAAQ,CAKNorB,QAAS,mCACTC,YAAY,EACZrrB,MAAO,eAET,gBAAiB,CAKforB,QAAS,qHACTd,OAAQ,CACN,SAAY,CACVc,QAAS,gBACTC,YAAY,GAEd,OAAU,+DACV,YAAe,kBAEjBrrB,MAAO,OAET,KAAQ,CAINorB,QAAS4G,EAAa,4CAA4Cl1B,QAAQ,GAC1EuuB,YAAY,EACZC,QAAQ,EACRhB,OAAQ,CACN,QAAW,CACTc,QAAS,sBACTC,YAAY,EACZf,OAAQ,IAGV,YAAe,YAGnB,OAAU,CAIRc,QAAS4G,EAAa,4CAA4Cl1B,QAAQ,GAC1EuuB,YAAY,EACZC,QAAQ,EACRhB,OAAQ,CACN,QAAW,CACTc,QAAS,oBACTC,YAAY,EACZf,OAAQ,IAGV,YAAe,SAGnB,OAAU,CAGRc,QAAS4G,EAAa,4BAA4Bl1B,QAAQ,GAC1DuuB,YAAY,EACZC,QAAQ,EACRhB,OAAQ,CACN,QAAW,CACTc,QAAS,uBACTC,YAAY,EACZf,OAAQ,IAGV,YAAe,QAGnB,IAAO,CAILc,QAAS4G,EAAa,+FAA+Fl1B,QAAQ,GAC7HuuB,YAAY,EACZC,QAAQ,EACRhB,OAAQ,CACN,SAAY,CACVc,QAAS,oBACTC,YAAY,GAEd,QAAW,CACTD,QAAS,sBACTC,YAAY,EACZf,OAAQ,IAGV,OAAU,CACRc,QAAS,gCAKjB,CAAC,MAAO,OAAQ,SAAU,UAAU14B,SAAQ,SAAUwM,GACpD,CAAC,MAAO,OAAQ,SAAU,UAAUxM,SAAQ,SAAU43B,GAChDprB,IAAUorB,IACZhuB,EAAMyB,UAAUs0B,SAASnzB,GAAOorB,OAAOntB,QAAQmtB,OAAOA,GAAUhuB,EAAMyB,UAAUs0B,SAAS/H,UAI/FhuB,EAAMyvB,MAAMzuB,IAAI,kBAAkB,SAAUutB,GACrB,aAAjBA,EAAIptB,UAA4C,OAAjBotB,EAAIptB,UAIvC,SAASqwB,EAAWruB,GAClB,GAAKA,GAA4B,iBAAXA,EAItB,IAAK,IAAIxF,EAAI,EAAGmY,EAAI3S,EAAOlH,OAAQ0B,EAAImY,EAAGnY,IAAK,CAC7C,IAAIiF,EAAQO,EAAOxF,GAEnB,GAAmB,SAAfiF,EAAM9G,KAAV,CAmBA,IAAIk6B,EAAWpzB,EAAM/B,QAAQ,GACzBo1B,EAAYrzB,EAAM/B,QAAQ,GAE9B,GAAIm1B,GAAYC,GAA+B,kBAAlBD,EAASl6B,MAA+C,eAAnBm6B,EAAUn6B,MAAqD,iBAArBk6B,EAASn1B,QAAsB,CAEzI,IAAI6C,EAAQ,YAAcsyB,EAASn1B,QAAQq1B,OAAO53B,MAAM,OAAO,GAAGqe,cAE7DsZ,EAAUvyB,MAEuB,iBAApBuyB,EAAUvyB,MAC1BuyB,EAAUvyB,MAAQ,CAACuyB,EAAUvyB,MAAOA,GAEpCuyB,EAAUvyB,MAAMxS,KAAKwS,GAJrBuyB,EAAUvyB,MAAQ,CAACA,SA1BrB8tB,EAAW5uB,EAAM/B,UAoCvB2wB,CAAWjD,EAAIprB,WAEjBnD,EAAMyvB,MAAMzuB,IAAI,QAAQ,SAAUutB,GAChC,GAAiB,eAAbA,EAAIzyB,KAAR,CAMA,IAFA,IAAIk6B,EAAW,GAENr4B,EAAI,EAAGmY,EAAIyY,EAAIsB,QAAQ5zB,OAAQ0B,EAAImY,EAAGnY,IAAK,CAClD,IAAImrB,EAAMyF,EAAIsB,QAAQlyB,GAClB2X,EAAQ,gBAAgBkB,KAAKsS,GAEjC,GAAIxT,EAAO,CACT0gB,EAAW1gB,EAAM,GACjB,OAIJ,IAAIpS,EAAUlD,EAAMyB,UAAUu0B,GAE9B,GAAK9yB,EAYE,CAEL,IAAID,EAAOsrB,EAAI1tB,QAAQ5P,QAAQ,QAAS,KAAKA,QAAQ,SAAU,KAC/Ds9B,EAAI1tB,QAAUb,EAAMsuB,UAAUrrB,EAAMC,EAAS8yB,QAd7C,GAAIA,GAAyB,SAAbA,GAAuBh2B,EAAMquB,QAAQ8H,WAAY,CAC/D,IAAI5V,EAAK,OAAQ,IAAIlV,MAAO+qB,UAAY,IAAMlgB,KAAKmgB,MAAsB,KAAhBngB,KAAKogB,UAC9D/H,EAAIuB,WAAe,GAAIvP,EACvBvgB,EAAMquB,QAAQ8H,WAAWI,cAAcP,GAAU,WAC/C,IAAIQ,EAAMhuB,SAASyK,eAAesN,GAE9BiW,IACFA,EAAIC,UAAYz2B,EAAMsuB,UAAUkI,EAAIE,YAAa12B,EAAMyB,UAAUu0B,GAAWA,YAUtFh2B,EAAMyB,UAAUk1B,GAAK32B,EAAMyB,UAAUs0B,SAjUvC,CAkUG/1B,GAIH,SAAWA,GACTA,EAAMyB,UAAUm1B,KAAO,CACrB,MAAS,CACT,4BACA,YACA,aASF,IAAIC,EAAW,CACb,eAAgB,IAChB,gBAAiB,IACjB,gBAAiB,IACjB,iBAAkB,IAClB,UAAa,IACb,KAAQ,KAGV/7B,OAAOyC,KAAKs5B,GAAUzgC,SAAQ,SAAU4F,GACtC,IAAI/J,EAAS4kC,EAAS76B,GAClB0H,EAAQ,GAEP,QAAQmJ,KAAK7Q,IAEhB0H,EAAMxS,KAAK,MAAMslB,KAAKxa,GAAM,IAGjB,SAATA,GACF0H,EAAMxS,KAAK,QAGb8O,EAAMyB,UAAUm1B,KAAK56B,GAAQ,CAE3B8yB,QAASM,OAAO,QAAUn9B,EAAS,iCAAkC,KACrEyR,MAAOA,MAIX5I,OAAOC,eAAeiF,EAAMyB,UAAUm1B,KAAM,WAAY,CACtDl9B,MAAOm9B,IA5CX,CA8CG72B,GAIHA,EAAMyB,UAAUq1B,IAAM,CAUpB,QAAW,QAKX,QAAW,WACX,SAAY,SAKZ,OAAU,mCAOV,QAAW,CACThI,QAAS,iBACTd,OAAQ,CAON,UAAa,cAiBjB,MAAS,YAYT,YAAe,oBAIjBhuB,EAAMyB,UAAU2J,GAAKpL,EAAMyB,UAAUmsB,OAAO,QAAS,CACnD,QAAW,sKACX,QAAW,2LACX,QAAW,gCACX,SAAY,wFACZ,OAAU,4DACV,OAAU,CACRkB,QAAS,mCACTE,QAAQ,YAGLhvB,EAAMyB,UAAU2J,GAAG,cAG1B,SAAWpL,GACTA,EAAMyB,UAAUs1B,WAAa,CAC3B,QAAW,oBACX,UAAa,CACXjI,QAAS,qBACTprB,MAAO,eAET,OAAU,mCACV,OAAU,6DACV,QAAW,qBACX,MAAS,CACPorB,QAAS,wCACTC,YAAY,EACZrrB,MAAO,WAET,SAAY,CACVorB,QAAS,aACTd,OAAQ,CACN+C,YAAa,QACbJ,SAAU,YAGd,YAAe,oCACf,SAAY,yCAEd3wB,EAAMyvB,MAAMzuB,IAAI,mBAAmB,SAAUutB,GAE3CvuB,EAAMyB,UAAU,qBAAqB8wB,kBAAkBhE,EAAK,aADpC,6CAG1BvuB,EAAMyvB,MAAMzuB,IAAI,kBAAkB,SAAUutB,GAC1CvuB,EAAMyB,UAAU,qBAAqBmxB,qBAAqBrE,EAAK,iBA9BnE,CAgCGvuB,GAIHA,EAAMyB,UAAUgT,KAAO,CACrB,SAAY,CACVqa,QAAS,gCACTE,QAAQ,GAEV,OAAU,CACRF,QAAS,gCACTE,QAAQ,GAEV,QAAW,gCACX,OAAU,2BACV,YAAe,WACf,SAAY,IACZ,QAAW,qBACX,KAAQ,CACNF,QAAS,WACTprB,MAAO,YAaX1D,EAAMyB,UAAUu1B,KAAOh3B,EAAMyB,UAAUmsB,OAAO,MAAO,CACnD,QAAW,CAAC,mBAAoB,CAC9BkB,QAAS,kBACTC,YAAY,IAEd,OAAU,CACRD,QAAS,8CACTd,OAAQ,CACN,YAAe,UAInB,SAAY,CACVc,QAAS,yEACTd,OAAQ,CAEN,SAAY,aAGhB,SAAY,2CACZ,SAAY,aAEdhuB,EAAMyB,UAAUssB,aAAa,OAAQ,WAAY,CAC/C,SAAY,CACZ,CACEe,QAAS,cACTd,OAAQ,CACN,YAAe,MAGnB,aACA,cAAe,CACbc,QAAS,uCACTC,YAAY,EACZrrB,MAAO,cAKX1D,EAAMyB,UAAUw1B,SAAW,CACzB,QAAW,CACTnI,QAAS,6CACTC,YAAY,GAEd,OAAU,CACRD,QAAS,iDACTE,QAAQ,GAGV,QAAW,gCAEX,OAAU,CACRF,QAAS,4BACTd,OAAQ,CACN,SAAY,kCAGhB,SAAY,kDACZ,QAAW,CACX,6HACA,CACEc,QAAS,wQACTC,YAAY,IAEd,SAAY,uBACZ,YAAe,YAIjB/uB,EAAMyB,UAAUy1B,WAAal3B,EAAMyB,UAAUmsB,OAAO,IAAK,CACvD,QAAW,wYACX,OAAU,qFACV,SAAY,iEAEP5tB,EAAMyB,UAAUy1B,WAAW,cAGlCl3B,EAAMyB,UAAU01B,MAAQ,CACtB,QAAW,mBACX,OAAU,CAAC,CACTrI,QAAS,wBACTE,QAAQ,GACP,CACDF,QAAS,qDACTE,QAAQ,IAEV,OAAU,yEACV,KAAQ,CACNF,QAAS,YACTprB,MAAO,YAET,UAAa,CACXorB,QAAS,SACTprB,MAAO,YAET,QAAW,2RACX,QAAW,qBAEX,SAAY,kGACZ,YAAe,oBAIjB1D,EAAMyB,UAAU21B,OAAS,CACvB,QAAW,CACTtI,QAAS,eACTC,YAAY,GAEd,uBAAwB,CACtBD,QAAS,sEACTE,QAAQ,EACRhB,OAAQ,CACN,cAAiB,CAEfc,QAAS,2EACTC,YAAY,EACZf,OAAQ,CACN,cAAe,CACbc,QAAS,qBACTC,YAAY,GAEd,oBAAqB,CACnBD,QAAS,kBACTprB,MAAO,eAETvM,KAAM,OAGV,OAAU,YAGd,uBAAwB,CACtB23B,QAAS,uCACTE,QAAQ,EACRtrB,MAAO,UAET,OAAU,CACRorB,QAAS,mDACTE,QAAQ,GAEV,SAAY,CACVF,QAAS,4CACTC,YAAY,GAEd,aAAc,CACZD,QAAS,mBACTC,YAAY,GAEd,UAAa,CACXD,QAAS,wBACTC,YAAY,EACZrrB,MAAO,CAAC,aAAc,eACtBsqB,OAAQ,CACN,YAAe,OAGnB,QAAW,mMACX,QAAW,shBACX,QAAW,0BACX,OAAU,6FACV,SAAY,oDACZ,YAAe,iBAEjBhuB,EAAMyB,UAAU21B,OAAO,wBAAwBpJ,OAAsB,cAAEA,OAAO72B,KAAO6I,EAAMyB,UAAU21B,OACrGp3B,EAAMyB,UAAU41B,GAAKr3B,EAAMyB,UAAU21B,OAGrCp3B,EAAMyB,UAAU61B,OAASt3B,EAAMyB,UAAUmsB,OAAO,QAAS,CACvD,QAAW,CACTkB,QAAS,4BACTC,YAAY,GAEd,OAAU,CACRD,QAAS,sCACTE,QAAQ,GAGV,aAAc,aACd,QAAW,4RACX,SAAY,wGAEdhvB,EAAMyB,UAAUssB,aAAa,SAAU,aAAc,CACnD,UAAa,CACXe,QAAS,gEACTprB,MAAO,UAET,YAAe,CAEborB,QAAS,wBACTprB,MAAO,YAET,MAAS,CACPorB,QAAS,mBACTprB,MAAO,mBAIJ1D,EAAMyB,UAAU61B,OAAOlF,SAG9B,SAAWpyB,GACTA,EAAMyB,UAAU81B,KAAOv3B,EAAMyB,UAAUmsB,OAAO,MAAO,CAEnD,QAAW,CACTkB,QAAS,iDACTC,YAAY,KAGhB/uB,EAAMyB,UAAUssB,aAAa,OAAQ,SAAU,CAE7C,cAAe,CAEbe,QAAS,sBACTd,OAAQ,CACN,OAAU,+BAIThuB,EAAMyB,UAAU81B,KAAKC,OAC5B,IAAI7G,EAAW,yBACX8G,EAAW,CAAC,2CAA4C,CAC1D3I,QAAS,eACTC,YAAY,IAEd/uB,EAAMyB,UAAUssB,aAAa,OAAQ,WAAY,CAE/C,gBAAiB,CACfe,QAAS,eACTd,OAAQ,CACN,YAAe,IACf,SAAY2C,EACZ,SAAY8G,IAIhB,gBAAiB,CACf3I,QAAS,sCACTd,OAAQ,CACN,SAAY,CAAC,kBAAmB,CAC9Bc,QAAS,aACTC,YAAY,IAEd,YAAe,IACf,SAAY4B,EACZ,SAAY8G,EACZ,UAAaz3B,EAAMyB,UAAU81B,KAAKG,qBAIjC13B,EAAMyB,UAAU81B,KAAKhb,gBACrBvc,EAAMyB,UAAU81B,KAAKG,UAG5B13B,EAAMyB,UAAUssB,aAAa,OAAQ,cAAe,CAClD,SAAY,CACVe,QAAS,yEACTC,YAAY,KAxDlB,CA2DG/uB,GAIHA,EAAMyB,UAAUk2B,KAAO33B,EAAMyB,UAAUmsB,OAAO,MAAO,CACnD,QAAW,CACTkB,QAAS,uCACTC,YAAY,GAEd,OAAU,CACRD,QAAS,0CACTd,OAAQ,CACN,KAAQ,YAKZ,IAAO,0BAQP,SAAY,CAEVc,QAAS,iFACTd,OAAQ,CACN,OAAU,CACRc,QAAS,IACTprB,MAAO,aAET,YAAe,UACf,SAAY,2BAGhB,SAAY,CACVorB,QAAS,4CACTd,OAAQ,CACN,SAAY,6BAIlBhuB,EAAMyB,UAAUssB,aAAa,OAAQ,SAAU,CAC7C,QAAW,CAAC,sGAAuG,CACjHe,QAAS,4BACTC,YAAY,MAGhB/uB,EAAMyB,UAAUssB,aAAa,OAAQ,YAAa,CAEhD,SAAY,2BAEd/tB,EAAMyB,UAAUssB,aAAa,OAAQ,WAAY,CAC/C,YAAe,CACbe,QAAS,UACTprB,MAAO,YAET,UAAa,CACXorB,QAAS,6BACTprB,MAAO,WAET,QAAW,qBACX,KAAQ,CACNorB,QAAS,WACTprB,MAAO,WAET,SAAY,CACVorB,QAAS,kDACTC,YAAY,KAGhB/uB,EAAMyB,UAAUk2B,KAAa,OAAE3J,OAAO72B,KAAO6I,EAAMyB,UAAUk2B,KAG7D33B,EAAMyB,UAAUm2B,IAAM,CACpB,QAAW,CACT9I,QAAS,gDACTC,YAAY,GAEd,SAAY,CAAC,CACXD,QAAS,sCACTE,QAAQ,GACP,YACH,OAAU,CACRF,QAAS,kDACTE,QAAQ,EACRD,YAAY,GAEd,SAAY,4FAEZ,QAAW,+8EACX,QAAW,2BACX,OAAU,wCACV,SAAY,yHACZ,YAAe,eAIjB,SAAW/uB,GACT,IAAIguB,EAAS,CACX,IAAO,uBACP,OAAU,CACRc,QAAS,gDACTE,QAAQ,GAEV,cAAiB,KAEjB,KAAQ,KAER,UAAa,+BACb,QAAW,CACTF,QAAS,4DACTC,YAAY,GAEd,QAAW,iBACX,OAAU,oBACV,QAAW,qBACX,SAAY,CAEZ,oGACA,YAAe,iBAEjBf,EAAsB,cAAI,CACxBc,QAAS,iBACTprB,MAAO,WACPsqB,OAAQ,CACN,UAAa,CACXc,QAAS,QACTprB,MAAO,eAETvM,KAAM62B,IAGVA,EAAa,KAAI,CACfc,QAAS,oBACTd,OAAQ,CACN,SAAY,SACZ72B,KAAM62B,IAGVhuB,EAAMyB,UAAUo2B,OAAS,CACvB,QAAW,CACT/I,QAAS,qCACTC,YAAY,GAEd,qBAAsB,CACpBD,QAAS,aACTC,YAAY,EACZf,OAAQ,CACN,OAAU,WACV72B,KAAM62B,IAGV,uBAAwB,CACtBc,QAAS,sDACTC,YAAY,EACZf,OAAQ,CACN,SAAY,OACZ72B,KAAM62B,IAGV,UAAa,CACXc,QAAS,kDACTC,YAAY,EACZf,OAAQ,CACN2F,QAAS,OACTx8B,KAAM62B,IAKV,uBAAwB,CACtBc,QAAS,0HACTC,YAAY,EACZf,OAAQ,CACN,SAAY,CACVc,QAAS,WACTd,OAAQ,CACN,cAAiBA,EAAO7Q,gBAG5BhmB,KAAM62B,IAMV,SAAY,CACVc,QAAS,uNACTC,YAAY,EACZf,OAAQ,CACN,cAAiBA,EAAO7Q,cACxB,YAAe,UAGnB,KAAQ6Q,EAAOx1B,KACf,OAAUw1B,EAAO96B,OACjB,cAAiB86B,EAAO7Q,cACxB,YAAe,iBApGnB,CAsGGnd,GAIH,IAAI8zB,EAAa9zB,EAAMstB,KAAKG,MAAMztB,EAAMyB,UAAUqyB,YAClD9zB,EAAMyB,UAAUq2B,IAAM93B,EAAMyB,UAAUmsB,OAAO,MAAOkG,GAGpD9zB,EAAMyB,UAAUs2B,KAAO,CACrB,QAAW,CAAC,iBAAkB,CAC5BjJ,QAAS,OACTE,QAAQ,IAEV,OAAU,CACRF,QAAS,yBACTE,QAAQ,GAEV,QAAW,CAAC,CACVF,QAAS,sBACTd,OAAQ,CACN,SAAY,MAEb,CACDc,QAAS,ibACTd,OAAQ,CACN,YAAe,OAEhB,4QACH,SAAY,oCACZ,OAAU,kNACV,YAAe,QAIjBhuB,EAAMyB,UAAUu2B,KAAO,CACrB,OAAU,CACRlJ,QAAS,wFACTC,YAAY,EACZrrB,MAAO,UAET,QAAW,MACX,IAAO,CACLorB,QAAS,+EACTC,YAAY,EACZrrB,MAAO,UAET,UAAa,CACXorB,QAAS,gBACTC,YAAY,EACZrrB,MAAO,aAET,SAAY,CACVorB,QAAS,2MACTC,YAAY,EACZrrB,MAAO,UAET,QAAW,CACTorB,QAAS,mEACTC,YAAY,EACZrrB,MAAO,aAET,KAAQ,CACNorB,QAAS,+DACTC,YAAY,EACZrrB,MAAO,aAET,OAAU,CACRorB,QAAS,4FACTC,YAAY,EACZC,QAAQ,GAEV,OAAU,CACRF,QAAS,gIACTC,YAAY,GAEd,IAAO,UACP,UAAa,YACb,YAAe,6BAEjB/uB,EAAMyB,UAAUw2B,IAAMj4B,EAAMyB,UAAUu2B,KACvB,O,mBCnmGf,SAASE,EAAgBvqB,EAAGwR,GAM1B,OALA3kB,EAAO9J,QAAUwnC,EAAkBp9B,OAAO0T,gBAAkB,SAAyBb,EAAGwR,GAEtF,OADAxR,EAAE5K,UAAYoc,EACPxR,GAGFuqB,EAAgBvqB,EAAGwR,GAG5B3kB,EAAO9J,QAAUwnC,G,qBCTjBxnC,EAAQC,YAAa,EACrBD,EAAQynC,YAASt6B,EAEjB,IAAIyC,EAAWxF,OAAOyF,QAAU,SAAUjK,GACxC,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAASpE,UAAUuB,GAEvB,IAAK,IAAIpE,KAAOiH,EACV1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAC/CjD,EAAOiD,GAAOiH,EAAOjH,IAK3B,OAAOjD,GAGL8hC,EAAe,WACjB,SAAShyB,EAAiB9P,EAAQ7C,GAChC,IAAK,IAAIkK,EAAI,EAAGA,EAAIlK,EAAMwI,OAAQ0B,IAAK,CACrC,IAAIC,EAAanK,EAAMkK,GACvBC,EAAWuC,WAAavC,EAAWuC,aAAc,EACjDvC,EAAWwC,cAAe,EACtB,UAAWxC,IAAYA,EAAWyC,UAAW,GACjDvF,OAAOC,eAAezE,EAAQsH,EAAWrE,IAAKqE,IAIlD,OAAO,SAAUuQ,EAAakqB,EAAYC,GAGxC,OAFID,GAAYjyB,EAAiB+H,EAAYtZ,UAAWwjC,GACpDC,GAAalyB,EAAiB+H,EAAamqB,GACxCnqB,GAdQ,GAoBfoqB,EAAU/nC,EAFD,EAAQ,SAMjBgoC,EAAchoC,EAFD,EAAQ,SAMrBioC,EAAoBjoC,EAFD,EAAQ,SAM3BkoC,EAAqBloC,EAFD,EAAQ,SAI5BmoC,EAAe,EAAQ,QAEvBC,EAAmB,EAAQ,QAE/B,SAASpoC,EAAuBiK,GAC9B,OAAOA,GAAOA,EAAI9J,WAAa8J,EAAM,CACnCrJ,QAASqJ,GAIb,SAAS4L,EAAyB5L,EAAK8C,GACrC,IAAIjH,EAAS,GAEb,IAAK,IAAIqH,KAAKlD,EACR8C,EAAKyE,QAAQrE,IAAM,GAClB7C,OAAOjG,UAAUqB,eAAevC,KAAK8G,EAAKkD,KAC/CrH,EAAOqH,GAAKlD,EAAIkD,IAGlB,OAAOrH,EAGT,SAAS4X,EAAgBxY,EAAUyY,GACjC,KAAMzY,aAAoByY,GACxB,MAAM,IAAIV,UAAU,qCAIxB,SAASW,EAA2BC,EAAM1a,GACxC,IAAK0a,EACH,MAAM,IAAIC,eAAe,6DAG3B,OAAO3a,GAAyB,iBAATA,GAAqC,mBAATA,EAA8B0a,EAAP1a,EAmB5E,IAA6B2E,EACvBoX,EAAQC,EAoPVkpB,GAAoB,EAAIJ,EAAkBrnC,SAASunC,EAAalwB,mBAAoBkwB,EAAaG,wBAAyBH,EAAahwB,iBAAnH,EAJJ,WAClB,OAAO,QAILowB,GAtPyBzgC,EAsPHugC,EAnPjBlpB,EAAQD,EAAS,SAAUlc,GAGhC,SAASwlC,IAGP,OAFA9qB,EAAgBta,KAAMolC,GAEf5qB,EAA2Bxa,KAAMJ,EAAiBiN,MAAM7M,KAAMwI,YA2LvE,OApNJ,SAAmB8M,EAAUC,GAC3B,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAIsE,UAAU,kEAAoEtE,GAG1FD,EAASrU,UAAYiG,OAAOsG,OAAO+H,GAAcA,EAAWtU,UAAW,CACrEmO,YAAa,CACXtJ,MAAOwP,EACP/I,YAAY,EACZE,UAAU,EACVD,cAAc,KAGd+I,IAAYrO,OAAO0T,eAAiB1T,OAAO0T,eAAetF,EAAUC,GAAcD,EAASnG,UAAYoG,GAOzGoF,CAAUyqB,EAAexlC,GAQzBwlC,EAAcnkC,UAAU0U,sBAAwB,SAA+BC,GAC7E,QAAQ,EAAIkvB,EAAmBtnC,SAASwC,KAAKH,MAAO+V,IAGtDwvB,EAAcnkC,UAAUokC,yBAA2B,SAAkCC,EAAOC,GAC1F,IAAKA,EACH,OAAO,KAGT,OAAQD,EAAMp9B,MACZ,KAAK88B,EAAiBQ,UAAUC,OAChC,KAAKT,EAAiBQ,UAAUE,SAC9B,MAAO,CACL7C,UAAW0C,GAGf,KAAKP,EAAiBQ,UAAUG,MAC9B,MAAO,CACLC,QAASL,GAIf,MAAM,IAAIvwB,MAAM,IAAMswB,EAAMp9B,KAAO,uGAGrCk9B,EAAcnkC,UAAU4kC,yBAA2B,SAAkCvnC,GACnF,IAAIZ,EAEA4nC,EAAQhnC,EAAKgnC,MACbQ,EAAoBxnC,EAAKwnC,kBACzBC,EAAgBznC,EAAKynC,cACrBR,EAAiBjnC,EAAKinC,eAC1B,OAAO74B,EAAS,GAAIo5B,IAAoBpoC,EAAY,IAAc4nC,EAAMp9B,MAAQ,GAAG0B,OAAOk8B,EAAkBR,EAAMp9B,OAAS,GAAI,CAACwE,EAAS,GAAIq5B,EAAe/lC,KAAKqlC,yBAAyBC,EAAOC,MAAoB7nC,KAGvN0nC,EAAcnkC,UAAU+kC,sBAAwB,SAA+B9lC,GAC7E,IAAI+lC,EAAWC,EAEXZ,EAAQplC,EAAMolC,MACdjxB,EAAWnU,EAAMmU,SACjB0xB,EAAgB7lC,EAAM6lC,cACtBR,EAAiBrlC,EAAMqlC,eAE3B,OAAQD,EAAMp9B,MACZ,KAAK88B,EAAiBQ,UAAUW,MAC9B,OAAOz5B,EAAS,GAAI2H,IAAW4xB,EAAY,IAAcX,EAAMp9B,MAAQq9B,EAAgBU,EAAUG,gBAAkB15B,EAAS,GAAIq5B,GAAgBE,IAElJ,KAAKjB,EAAiBQ,UAAUa,KAC9B,OAAO35B,EAAS,GAAI2H,EAAU,CAC5BiyB,eAAgB55B,EAAS,GAAIq5B,KAGjC,KAAKf,EAAiBQ,UAAUe,KAC9B,OAAO75B,EAAS,GAAI2H,EAAU,CAC5BmyB,eAAgB95B,EAAS,GAAIq5B,KAInC,OAAOr5B,EAAS,GAAI2H,IAAW6xB,EAAY,IAAcZ,EAAMp9B,MAAQwE,EAAS,GAAIq5B,GAAgBG,KAGtGd,EAAcnkC,UAAUwlC,4BAA8B,SAAqCX,EAAmBzxB,GAC5G,IAAIqyB,EAAoBh6B,EAAS,GAAI2H,GAOrC,OALAnN,OAAOyC,KAAKm8B,GAAmBtjC,SAAQ,SAAUmkC,GAC/C,IAAIC,EAEJF,EAAoBh6B,EAAS,GAAIg6B,IAAoBE,EAAY,IAAcD,GAAkBb,EAAkBa,GAAiBC,OAE/HF,GAGTtB,EAAcnkC,UAAU4lC,sBAAwB,SAA+BvB,EAAOC,GAmBpF,OAAO,GAGTH,EAAcnkC,UAAU6lC,mBAAqB,SAA4B73B,EAAUoF,GACjF,IAAIjS,EAASpC,KAET8lC,EAAoB,GAyCxB,OAvCAnB,EAAQnnC,QAAQ0gB,SAAS1b,QAAQyM,GAAU,SAAUq2B,GACnD,GAAKA,GAAUA,EAAMzlC,MAArB,CAIA,IAAIknC,EAAezB,EAAMzlC,MACrB0lC,EAAiBwB,EAAa93B,SAC9B+3B,EAAav0B,EAAyBs0B,EAAc,CAAC,aAErDhB,GAAgB,EAAIhB,EAAakC,mCAAmCD,GAIxE,OAFA5kC,EAAOykC,sBAAsBvB,EAAOC,GAE5BD,EAAMp9B,MACZ,KAAK88B,EAAiBQ,UAAU0B,KAChC,KAAKlC,EAAiBQ,UAAU2B,KAChC,KAAKnC,EAAiBQ,UAAUE,SAChC,KAAKV,EAAiBQ,UAAUC,OAChC,KAAKT,EAAiBQ,UAAUG,MAC9BG,EAAoB1jC,EAAOyjC,yBAAyB,CAClDP,MAAOA,EACPQ,kBAAmBA,EACnBC,cAAeA,EACfR,eAAgBA,IAElB,MAEF,QACElxB,EAAWjS,EAAO4jC,sBAAsB,CACtCV,MAAOA,EACPjxB,SAAUA,EACV0xB,cAAeA,EACfR,eAAgBA,SAMxBlxB,EAAWrU,KAAKymC,4BAA4BX,EAAmBzxB,IAIjE+wB,EAAcnkC,UAAU6B,OAAS,WAC/B,IAAIskC,EAASpnC,KAAKH,MACdoP,EAAWm4B,EAAOn4B,SAClBpP,EAAQ4S,EAAyB20B,EAAQ,CAAC,aAE1C/yB,EAAW3H,EAAS,GAAI7M,GAM5B,OAJIoP,IACFoF,EAAWrU,KAAK8mC,mBAAmB73B,EAAUoF,IAGxCswB,EAAQnnC,QAAQgG,cAAckB,EAAW2P,IAGlDmwB,EAAaY,EAAe,KAAM,CAAC,CACjCz/B,IAAK,YAuBL2B,IAAK,SAAaqN,GAChBjQ,EAAUiQ,UAAYA,MAInBywB,EAjMe,CAkMtBT,EAAQnnC,QAAQkH,WAAYoX,EAAOnX,UAAY,CAC/CjG,KAAMkmC,EAAYpnC,QAAQgC,OAC1B8mC,eAAgB1B,EAAYpnC,QAAQgC,OACpCyP,SAAU21B,EAAYpnC,QAAQ6pC,UAAU,CAACzC,EAAYpnC,QAAQ8pC,QAAQ1C,EAAYpnC,QAAQ4hB,MAAOwlB,EAAYpnC,QAAQ4hB,OACpHmoB,aAAc3C,EAAYpnC,QAAQ8B,OAClCkoC,MAAO5C,EAAYpnC,QAAQkC,KAC3B+nC,wBAAyB7C,EAAYpnC,QAAQkC,KAC7C8mC,eAAgB5B,EAAYpnC,QAAQgC,OACpC6sB,KAAMuY,EAAYpnC,QAAQ8pC,QAAQ1C,EAAYpnC,QAAQgC,QACtDkoC,KAAM9C,EAAYpnC,QAAQ8pC,QAAQ1C,EAAYpnC,QAAQgC,QACtDmoC,SAAU/C,EAAYpnC,QAAQ8pC,QAAQ1C,EAAYpnC,QAAQgC,QAC1DooC,oBAAqBhD,EAAYpnC,QAAQoH,KACzCijC,OAAQjD,EAAYpnC,QAAQ8pC,QAAQ1C,EAAYpnC,QAAQgC,QACxDiB,MAAOmkC,EAAYpnC,QAAQ8pC,QAAQ1C,EAAYpnC,QAAQgC,QACvDqvB,MAAO+V,EAAYpnC,QAAQ8B,OAC3B8mC,gBAAiBxB,EAAYpnC,QAAQgC,OACrCsoC,cAAelD,EAAYpnC,QAAQ8B,QAClCwc,EAAOlU,aAAe,CACvB4/B,OAAO,EACPC,yBAAyB,GACxB3rB,EAAOtG,KAAO9Q,EAAU8Q,KAAMsG,EAAOrG,OAAS,WAC/C,IAAIsyB,EAAcrjC,EAAU+Q,SAmB5B,OAjBKsyB,IAEHA,GAAc,EAAIhD,EAAahwB,kBAAkB,CAC/CizB,QAAS,GACT1B,eAAgB,GAChBmB,yBAAyB,EACzBjB,eAAgB,GAChByB,SAAU,GACVC,SAAU,GACVC,aAAc,GACdC,WAAY,GACZC,UAAW,GACXxZ,MAAO,GACPuX,gBAAiB,MAId2B,GACNhsB,GASLopB,EAAamD,aAAenD,EAAa1vB,OACzC3Y,EAAQynC,OAASY,EACjBroC,EAAQU,QAAU2nC,G,kCC7VhBv+B,EAAO9J,QAAU,EAAQ,S,mBCG3B8J,EAAO9J,QANP,SAAgC+J,GAC9B,OAAOA,GAAOA,EAAI9J,WAAa8J,EAAM,CACnC,QAAWA,K,kDCmmBA,MArmBf,SAAoB0hC,GAiUlB,SAASC,EAAEha,EAAG4O,EAAGv5B,GACf,IAAI0kB,EAAI6U,EAAEkF,OAAO53B,MAAM+9B,GACvBrL,EAAI7U,EACJ,IAAI/D,EAAI+D,EAAElgB,OACNqgC,EAAIla,EAAEnmB,OAEV,OAAQqgC,GACN,KAAK,EACL,KAAK,EACH,IAAIjkB,EAAI,EAER,IAAK+J,EAAI,IAAMka,EAAI,GAAKla,EAAE,GAAK,IAAK/J,EAAID,IAAKC,EAC3C2Y,EAAE3Y,GAAKkkB,EAAEna,EAAG4O,EAAE3Y,GAAI5gB,GAAGy+B,OAGvB,MAEF,QACE,IAAIvI,EAAItV,EAAI,EAEZ,IAAK2Y,EAAI,GAAI3Y,EAAID,IAAKC,EACpB,IAAK,IAAIxK,EAAI,EAAGA,EAAIyuB,IAAKzuB,EACvBmjB,EAAErD,KAAO4O,EAAEna,EAAEvU,GAAK,IAAKsO,EAAE9D,GAAI5gB,GAAGy+B,OAMxC,OAAOlF,EAGT,SAASuL,EAAEna,EAAG4O,EAAGv5B,GACf,IAAI0kB,EAAI6U,EAAElkB,WAAW,GAGrB,OAFA,GAAKqP,IAAMA,GAAK6U,EAAIA,EAAEkF,QAAQppB,WAAW,IAEjCqP,GACN,KAAK,GACH,OAAO6U,EAAE//B,QAAQurC,EAAG,KAAOpa,EAAE8T,QAE/B,KAAK,GACH,OAAO9T,EAAE8T,OAASlF,EAAE//B,QAAQurC,EAAG,KAAOpa,EAAE8T,QAE1C,QACE,GAAI,EAAI,EAAIz+B,GAAK,EAAIu5B,EAAEhvB,QAAQ,MAAO,OAAOgvB,EAAE//B,QAAQurC,GAAI,KAAOpa,EAAEtV,WAAW,GAAK,GAAK,MAAQsV,EAAE8T,QAGvG,OAAO9T,EAAI4O,EAGb,SAASyL,EAAEra,EAAG4O,EAAGv5B,EAAG0kB,GAClB,IAAI/D,EAAIgK,EAAI,IACRka,EAAI,EAAItL,EAAI,EAAIv5B,EAAI,EAAI0kB,EAE5B,GAAI,MAAQmgB,EAAG,CACbla,EAAIhK,EAAEpW,QAAQ,IAAK,GAAK,EACxB,IAAIqW,EAAID,EAAElF,UAAUkP,EAAGhK,EAAEnc,OAAS,GAAGi6B,OAErC,OADA7d,EAAID,EAAElF,UAAU,EAAGkP,GAAG8T,OAAS7d,EAAI,IAC5B,IAAMqkB,GAAK,IAAMA,GAAKC,EAAEtkB,EAAG,GAAK,WAAaA,EAAIA,EAAIA,EAG9D,GAAI,IAAMqkB,GAAK,IAAMA,IAAMC,EAAEvkB,EAAG,GAAI,OAAOA,EAE3C,OAAQkkB,GACN,KAAK,KACH,OAAO,KAAOlkB,EAAEtL,WAAW,IAAM,WAAasL,EAAIA,EAAIA,EAExD,KAAK,IACH,OAAO,MAAQA,EAAEtL,WAAW,GAAK,WAAasL,EAAIA,EAAIA,EAExD,KAAK,IACH,OAAO,MAAQA,EAAEtL,WAAW,GAAK,WAAasL,EAAIA,EAAIA,EAExD,KAAK,KACH,GAAI,MAAQA,EAAEtL,WAAW,GAAI,MAE/B,KAAK,IACL,KAAK,IACH,MAAO,WAAasL,EAAIA,EAE1B,KAAK,IACH,MAAO,WAAaA,EAAI,QAAUA,EAAIA,EAExC,KAAK,KACL,KAAK,IACH,MAAO,WAAaA,EAAI,QAAUA,EAAI,OAASA,EAAIA,EAErD,KAAK,IACH,GAAI,KAAOA,EAAEtL,WAAW,GAAI,MAAO,WAAasL,EAAIA,EACpD,GAAI,EAAIA,EAAEpW,QAAQ,aAAc,IAAK,OAAOoW,EAAEnnB,QAAQ2rC,EAAI,gBAAkBxkB,EAC5E,MAEF,KAAK,IACH,GAAI,KAAOA,EAAEtL,WAAW,GAAI,OAAQsL,EAAEtL,WAAW,IAC/C,KAAK,IACH,MAAO,eAAiBsL,EAAEnnB,QAAQ,QAAS,IAAM,WAAamnB,EAAI,OAASA,EAAEnnB,QAAQ,OAAQ,YAAcmnB,EAE7G,KAAK,IACH,MAAO,WAAaA,EAAI,OAASA,EAAEnnB,QAAQ,SAAU,YAAcmnB,EAErE,KAAK,GACH,MAAO,WAAaA,EAAI,OAASA,EAAEnnB,QAAQ,QAAS,kBAAoBmnB,EAE5E,MAAO,WAAaA,EAAI,OAASA,EAAIA,EAEvC,KAAK,IACH,MAAO,WAAaA,EAAI,YAAcA,EAAIA,EAE5C,KAAK,KACH,GAAI,KAAOA,EAAEtL,WAAW,GAAI,MAE5B,MAAO,oBADPuL,EAAID,EAAElF,UAAUkF,EAAEpW,QAAQ,IAAK,KAAK/Q,QAAQ,QAAS,IAAIA,QAAQ,gBAAiB,YAClD,WAAamnB,EAAI,gBAAkBC,EAAID,EAEzE,KAAK,KACH,OAAOykB,EAAGhwB,KAAKuL,GAAKA,EAAEnnB,QAAQ6rC,EAAI,aAAe1kB,EAAEnnB,QAAQ6rC,EAAI,UAAY1kB,EAAIA,EAEjF,KAAK,IAIH,OAFA4Y,GADA3Y,EAAID,EAAElF,UAAU,IAAIgjB,QACdl0B,QAAQ,KAAO,EAEbqW,EAAEvL,WAAW,GAAKuL,EAAEvL,WAAWkkB,IACrC,KAAK,IACH3Y,EAAID,EAAEnnB,QAAQ8rC,EAAG,MACjB,MAEF,KAAK,IACH1kB,EAAID,EAAEnnB,QAAQ8rC,EAAG,SACjB,MAEF,KAAK,IACH1kB,EAAID,EAAEnnB,QAAQ8rC,EAAG,MACjB,MAEF,QACE,OAAO3kB,EAGX,MAAO,WAAaA,EAAI,OAASC,EAAID,EAEvC,KAAK,KACH,IAAK,IAAMA,EAAEpW,QAAQ,SAAU,GAAI,MAErC,KAAK,IAIH,OAHAgvB,GAAK5Y,EAAIgK,GAAGnmB,OAAS,GAGbqgC,GAFRjkB,GAAK,KAAOD,EAAEtL,WAAWkkB,GAAK5Y,EAAElF,UAAU,EAAG8d,GAAK5Y,GAAGlF,UAAUkP,EAAEpgB,QAAQ,IAAK,GAAK,GAAGk0B,QAExEppB,WAAW,IAAwB,EAAlBuL,EAAEvL,WAAW,KAC1C,KAAK,IACH,GAAI,IAAMuL,EAAEvL,WAAW,GAAI,MAE7B,KAAK,IACHsL,EAAIA,EAAEnnB,QAAQonB,EAAG,WAAaA,GAAK,IAAMD,EACzC,MAEF,KAAK,IACL,KAAK,IACHA,EAAIA,EAAEnnB,QAAQonB,EAAG,YAAc,IAAMikB,EAAI,UAAY,IAAM,OAAS,IAAMlkB,EAAEnnB,QAAQonB,EAAG,WAAaA,GAAK,IAAMD,EAAEnnB,QAAQonB,EAAG,OAASA,EAAI,OAAS,IAAMD,EAG5J,OAAOA,EAAI,IAEb,KAAK,IACH,GAAI,KAAOA,EAAEtL,WAAW,GAAI,OAAQsL,EAAEtL,WAAW,IAC/C,KAAK,IACH,OAAOuL,EAAID,EAAEnnB,QAAQ,SAAU,IAAK,WAAamnB,EAAI,eAAiBC,EAAI,YAAcA,EAAID,EAE9F,KAAK,IACH,MAAO,WAAaA,EAAI,iBAAmBA,EAAEnnB,QAAQ+rC,EAAI,IAAM5kB,EAEjE,QACE,MAAO,WAAaA,EAAI,qBAAuBA,EAAEnnB,QAAQ,gBAAiB,IAAIA,QAAQ+rC,EAAI,IAAM5kB,EAEpG,MAEF,KAAK,IACL,KAAK,IACH,GAAI,KAAOA,EAAEtL,WAAW,IAAM,MAAQsL,EAAEtL,WAAW,GAAI,MAEzD,KAAK,IACL,KAAK,IACH,IAAI,IAAOmwB,EAAGpwB,KAAKuV,GAAI,OAAO,OAAS/J,EAAI+J,EAAElP,UAAUkP,EAAEpgB,QAAQ,KAAO,IAAI8K,WAAW,GAAK2vB,EAAEra,EAAEnxB,QAAQ,UAAW,kBAAmB+/B,EAAGv5B,EAAG0kB,GAAGlrB,QAAQ,kBAAmB,YAAcmnB,EAAEnnB,QAAQonB,EAAG,WAAaA,GAAKD,EAAEnnB,QAAQonB,EAAG,QAAUA,EAAEpnB,QAAQ,QAAS,KAAOmnB,EACxQ,MAEF,KAAK,IACH,GAAIA,EAAI,WAAaA,GAAK,MAAQA,EAAEtL,WAAW,GAAK,OAASsL,EAAI,IAAMA,EAAG,MAAQ3gB,EAAI0kB,GAAK,MAAQ/D,EAAEtL,WAAW,KAAO,EAAIsL,EAAEpW,QAAQ,YAAa,IAAK,OAAOoW,EAAElF,UAAU,EAAGkF,EAAEpW,QAAQ,IAAK,IAAM,GAAG/Q,QAAQisC,EAAI,gBAAkB9kB,EAGvO,OAAOA,EAGT,SAASukB,EAAEva,EAAG4O,GACZ,IAAIv5B,EAAI2qB,EAAEpgB,QAAQ,IAAMgvB,EAAI,IAAM,KAC9B7U,EAAIiG,EAAElP,UAAU,EAAG,IAAM8d,EAAIv5B,EAAI,IAErC,OADAA,EAAI2qB,EAAElP,UAAUzb,EAAI,EAAG2qB,EAAEnmB,OAAS,GAC3BkhC,EAAE,IAAMnM,EAAI7U,EAAIA,EAAElrB,QAAQmsC,EAAI,MAAO3lC,EAAGu5B,GAGjD,SAASqM,EAAGjb,EAAG4O,GACb,IAAIv5B,EAAIglC,EAAEzL,EAAGA,EAAElkB,WAAW,GAAIkkB,EAAElkB,WAAW,GAAIkkB,EAAElkB,WAAW,IAC5D,OAAOrV,IAAMu5B,EAAI,IAAMv5B,EAAExG,QAAQqsC,EAAI,YAAYpqB,UAAU,GAAK,IAAM8d,EAAI,IAG5E,SAASuM,EAAEnb,EAAG4O,EAAGv5B,EAAG0kB,EAAG/D,EAAGkkB,EAAGjkB,EAAGsV,EAAG9f,EAAGyK,GACpC,IAAK,IAAkBokB,EAAdc,EAAI,EAAG3W,EAAImK,EAAMwM,EAAIC,IAAKD,EACjC,OAAQd,EAAIgB,EAAEF,GAAG7pC,KAAKgqC,EAAGvb,EAAGyE,EAAGpvB,EAAG0kB,EAAG/D,EAAGkkB,EAAGjkB,EAAGsV,EAAG9f,EAAGyK,IAClD,UAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,KACH,MAEF,QACEuO,EAAI6V,EAIV,GAAI7V,IAAMmK,EAAG,OAAOnK,EAmBtB,SAAS+W,EAAExb,GAGT,YADA,KADAA,EAAIA,EAAEnwB,UACWkrC,EAAI,KAAM/a,EAAI,mBAAsBA,EAAIsa,EAAI,GAAKA,EAAI,EAAGS,EAAI/a,GAAKsa,EAAI,GAC/EkB,EAGT,SAASD,EAAEvb,EAAG4O,GACZ,IAAIv5B,EAAI2qB,EAKR,GAJA,GAAK3qB,EAAEqV,WAAW,KAAOrV,EAAIA,EAAEy+B,QAE/Bz+B,EAAI,CADAA,GAGA,EAAIgmC,EAAG,CACT,IAAIthB,EAAIohB,GAAG,EAAGvM,EAAGv5B,EAAGA,EAAGomC,EAAGC,EAAG,EAAG,EAAG,EAAG,QACtC,IAAW3hB,GAAK,iBAAoBA,IAAM6U,EAAI7U,GAGhD,IAAI/D,EA3jBN,SAAS2lB,EAAE3b,EAAG4O,EAAGv5B,EAAG0kB,EAAG/D,GACrB,IAAK,IAAgCE,EAAGklB,EAAiBz7B,EAAuEi8B,EAAmCC,EAA1J3B,EAAI,EAAGjkB,EAAI,EAAGsV,EAAI,EAAG9f,EAAI,EAASgZ,EAAI,EAAGqX,EAAI,EAAMC,EAAIp8B,EAAIuW,EAAI,EAAGxC,EAAI,EAAGsoB,EAAI,EAAGC,EAAI,EAAGxL,EAAI,EAAG8K,EAAIlmC,EAAEwE,OAAQqiC,EAAIX,EAAI,EAAMY,EAAI,GAAIpf,EAAI,GAAIqd,EAAI,GAAIO,EAAI,GAAOjnB,EAAI6nB,GAAI,CAI5K,GAHAH,EAAI/lC,EAAEqV,WAAWgJ,GACjBA,IAAMwoB,GAAK,IAAMjmB,EAAIxK,EAAI8f,EAAI2O,IAAM,IAAMjkB,IAAMmlB,EAAI,KAAOnlB,EAAI,GAAK,IAAKxK,EAAI8f,EAAI2O,EAAI,EAAGqB,IAAKW,KAExF,IAAMjmB,EAAIxK,EAAI8f,EAAI2O,EAAG,CACvB,GAAIxmB,IAAMwoB,IAAM,EAAIF,IAAMG,EAAIA,EAAEttC,QAAQutC,EAAG,KAAM,EAAID,EAAErI,OAAOj6B,QAAS,CACrE,OAAQuhC,GACN,KAAK,GACL,KAAK,EACL,KAAK,GACL,KAAK,GACL,KAAK,GACH,MAEF,QACEe,GAAK9mC,EAAEqG,OAAOgY,GAGlB0nB,EAAI,GAGN,OAAQA,GACN,KAAK,IAKH,IAHAllB,GADAimB,EAAIA,EAAErI,QACAppB,WAAW,GACjB/K,EAAI,EAEC8wB,IAAM/c,EAAGA,EAAI6nB,GAAI,CACpB,OAAQH,EAAI/lC,EAAEqV,WAAWgJ,IACvB,KAAK,IACH/T,IACA,MAEF,KAAK,IACHA,IACA,MAEF,KAAK,GACH,OAAQy7B,EAAI/lC,EAAEqV,WAAWgJ,EAAI,IAC3B,KAAK,GACL,KAAK,GACHsC,EAAG,CACD,IAAK+lB,EAAIroB,EAAI,EAAGqoB,EAAIG,IAAKH,EACvB,OAAQ1mC,EAAEqV,WAAWqxB,IACnB,KAAK,GACH,GAAI,KAAOX,GAAK,KAAO/lC,EAAEqV,WAAWqxB,EAAI,IAAMroB,EAAI,IAAMqoB,EAAG,CACzDroB,EAAIqoB,EAAI,EACR,MAAM/lB,EAGR,MAEF,KAAK,GACH,GAAI,KAAOolB,EAAG,CACZ1nB,EAAIqoB,EAAI,EACR,MAAM/lB,GAMdtC,EAAIqoB,GAKV,MAEF,KAAK,GACHX,IAEF,KAAK,GACHA,IAEF,KAAK,GACL,KAAK,GACH,KAAO1nB,IAAMwoB,GAAK7mC,EAAEqV,WAAWgJ,KAAO0nB,KAI1C,GAAI,IAAMz7B,EAAG,MACb+T,IAMF,OAHA/T,EAAItK,EAAEyb,UAAU2f,EAAG/c,GACnB,IAAMwC,IAAMA,GAAKimB,EAAIA,EAAEttC,QAAQwtC,EAAI,IAAIvI,QAAQppB,WAAW,IAElDwL,GACN,KAAK,GAIH,OAHA,EAAI8lB,IAAMG,EAAIA,EAAEttC,QAAQutC,EAAG,KAC3BhB,EAAIe,EAAEzxB,WAAW,IAGf,KAAK,IACL,KAAK,IACL,KAAK,IACL,KAAK,GACHsxB,EAAIpN,EACJ,MAEF,QACEoN,EAAIM,EAMR,GAFA7L,GADA9wB,EAAIg8B,EAAE/M,EAAGoN,EAAGr8B,EAAGy7B,EAAGplB,EAAI,IAChBnc,OACN,EAAIwhC,IAAsBQ,EAAIV,EAAE,EAAGx7B,EAAzBq8B,EAAIhC,EAAEsC,EAAGH,EAAGF,GAAmBrN,EAAG6M,EAAGC,EAAGjL,EAAG2K,EAAGplB,EAAG+D,GAAIoiB,EAAIH,EAAEhqC,KAAK,SAAK,IAAW6pC,GAAK,KAAOpL,GAAK9wB,EAAIk8B,EAAE/H,QAAQj6B,UAAYuhC,EAAI,EAAGz7B,EAAI,KAC5I,EAAI8wB,EAAG,OAAQ2K,GACjB,KAAK,IACHe,EAAIA,EAAEttC,QAAQ0tC,EAAItB,GAEpB,KAAK,IACL,KAAK,IACL,KAAK,GACHt7B,EAAIw8B,EAAI,IAAMx8B,EAAI,IAClB,MAEF,KAAK,IAEHA,GADAw8B,EAAIA,EAAEttC,QAAQ2tC,EAAI,UACV,IAAM78B,EAAI,IAClBA,EAAI,IAAM26B,GAAK,IAAMA,GAAKC,EAAE,IAAM56B,EAAG,GAAK,YAAcA,EAAI,IAAMA,EAAI,IAAMA,EAC5E,MAEF,QACEA,EAAIw8B,EAAIx8B,EAAG,MAAQoa,IAAWgD,GAAKpd,EAAVA,EAAa,SACnCA,EAAI,GACX,MAEF,QACEA,EAAIg8B,EAAE/M,EAAGoL,EAAEpL,EAAGuN,EAAGF,GAAIt8B,EAAGoa,EAAG/D,EAAI,GAGnCokB,GAAKz6B,EACLA,EAAIs8B,EAAID,EAAID,EAAI7lB,EAAI,EACpBimB,EAAI,GACJf,EAAI/lC,EAAEqV,aAAagJ,GACnB,MAEF,KAAK,IACL,KAAK,GAEH,GAAI,GAAK+c,GADT0L,GAAK,EAAIH,EAAIG,EAAEttC,QAAQutC,EAAG,IAAMD,GAAGrI,QACpBj6B,QAAS,OAAQ,IAAMkiC,IAAM7lB,EAAIimB,EAAEzxB,WAAW,GAAI,KAAOwL,GAAK,GAAKA,GAAK,IAAMA,KAAOua,GAAK0L,EAAIA,EAAEttC,QAAQ,IAAK,MAAMgL,QAAS,EAAIwhC,QAAK,KAAYQ,EAAIV,EAAE,EAAGgB,EAAGvN,EAAG5O,EAAGyb,EAAGC,EAAG3e,EAAEljB,OAAQkgB,EAAG/D,EAAG+D,KAAO,KAAO0W,GAAK0L,EAAIN,EAAE/H,QAAQj6B,UAAYsiC,EAAI,QAAajmB,EAAIimB,EAAEzxB,WAAW,GAAI0wB,EAAIe,EAAEzxB,WAAW,GAAIwL,GAC9S,KAAK,EACH,MAEF,KAAK,GACH,GAAI,MAAQklB,GAAK,KAAOA,EAAG,CACzBT,GAAKwB,EAAI9mC,EAAEqG,OAAOgY,GAClB,MAGJ,QACE,KAAOyoB,EAAEzxB,WAAW+lB,EAAI,KAAO1T,GAAKsd,EAAE8B,EAAGjmB,EAAGklB,EAAGe,EAAEzxB,WAAW,KAEhEuxB,EAAID,EAAID,EAAI7lB,EAAI,EAChBimB,EAAI,GACJf,EAAI/lC,EAAEqV,aAAagJ,IAIzB,OAAQ0nB,GACN,KAAK,GACL,KAAK,GACH,KAAOnlB,EAAIA,EAAI,EAAI,IAAM,EAAIC,GAAK,MAAQ6D,GAAK,EAAIoiB,EAAEtiC,SAAWmiC,EAAI,EAAGG,GAAK,MAC5E,EAAId,EAAIoB,GAAKtB,EAAE,EAAGgB,EAAGvN,EAAG5O,EAAGyb,EAAGC,EAAG3e,EAAEljB,OAAQkgB,EAAG/D,EAAG+D,GACjD2hB,EAAI,EACJD,IACA,MAEF,KAAK,GACL,KAAK,IACH,GAAI,IAAMxlB,EAAIxK,EAAI8f,EAAI2O,EAAG,CACvBwB,IACA,MAGJ,QAIE,OAHAA,IACAE,EAAIvmC,EAAEqG,OAAOgY,GAEL0nB,GACN,KAAK,EACL,KAAK,GACH,GAAI,IAAM3vB,EAAIyuB,EAAIjkB,EAAG,OAAQwO,GAC3B,KAAK,GACL,KAAK,GACL,KAAK,EACL,KAAK,GACHmX,EAAI,GACJ,MAEF,QACE,KAAOR,IAAMQ,EAAI,KAErB,MAEF,KAAK,EACHA,EAAI,MACJ,MAEF,KAAK,GACHA,EAAI,MACJ,MAEF,KAAK,GACHA,EAAI,MACJ,MAEF,KAAK,GACH,IAAMnwB,EAAIwK,EAAIikB,IAAM8B,EAAIC,EAAI,EAAGL,EAAI,KAAOA,GAC1C,MAEF,KAAK,IACH,GAAI,IAAMnwB,EAAIwK,EAAIikB,EAAIwC,GAAK,EAAIX,EAAG,OAAQroB,EAAIqoB,GAC5C,KAAK,EACH,MAAQtX,GAAK,KAAOpvB,EAAEqV,WAAWgJ,EAAI,KAAOgpB,EAAIjY,GAElD,KAAK,EACH,MAAQqX,IAAMY,EAAIZ,GAEtB,MAEF,KAAK,GACH,IAAMrwB,EAAIwK,EAAIikB,IAAM6B,EAAIroB,GACxB,MAEF,KAAK,GACH,IAAMuC,EAAIsV,EAAI9f,EAAIyuB,IAAM8B,EAAI,EAAGJ,GAAK,MACpC,MAEF,KAAK,GACL,KAAK,GACH,IAAM3lB,IAAMxK,EAAIA,IAAM2vB,EAAI,EAAI,IAAM3vB,EAAI2vB,EAAI3vB,GAC5C,MAEF,KAAK,GACH,IAAMA,EAAIwK,EAAIsV,GAAK2O,IACnB,MAEF,KAAK,GACH,IAAMzuB,EAAIwK,EAAIsV,GAAK2O,IACnB,MAEF,KAAK,GACH,IAAMzuB,EAAIwK,EAAIikB,GAAK3O,IACnB,MAEF,KAAK,GACH,GAAI,IAAM9f,EAAIwK,EAAIikB,EAAG,CACnB,GAAI,IAAMhkB,EAAG,OAAQ,EAAIuO,EAAI,EAAIqX,GAC/B,KAAK,IACH,MAEF,QACE5lB,EAAI,EAERqV,IAGF,MAEF,KAAK,GACH,IAAMtV,EAAIsV,EAAI9f,EAAIyuB,EAAI6B,EAAIp8B,IAAMA,EAAI,GACpC,MAEF,KAAK,GACL,KAAK,GACH,KAAM,EAAI8L,EAAIyuB,EAAI3O,GAAI,OAAQtV,GAC5B,KAAK,EACH,OAAQ,EAAImlB,EAAI,EAAI/lC,EAAEqV,WAAWgJ,EAAI,IACnC,KAAK,IACHuC,EAAI,GACJ,MAEF,KAAK,IACHwa,EAAI/c,EAAGuC,EAAI,GAGf,MAEF,KAAK,GACH,KAAOmlB,GAAK,KAAO3W,GAAKgM,EAAI,IAAM/c,IAAM,KAAOre,EAAEqV,WAAW+lB,EAAI,KAAO1T,GAAK1nB,EAAEyb,UAAU2f,EAAG/c,EAAI,IAAKkoB,EAAI,GAAI3lB,EAAI,IAIxH,IAAMA,IAAMkmB,GAAKP,GAGrBE,EAAIrX,EACJA,EAAI2W,EACJ1nB,IAKF,GAAI,GAFJ+c,EAAI1T,EAAEljB,QAEK,CAET,GADAmiC,EAAIpN,EACA,EAAIyM,SAA2C,KAArCQ,EAAIV,EAAE,EAAGpe,EAAGif,EAAGhc,EAAGyb,EAAGC,EAAGjL,EAAG1W,EAAG/D,EAAG+D,KAAoB,KAAOgD,EAAI8e,GAAGhiC,QAAS,OAAO8gC,EAAI5d,EAAIqd,EAGzG,GAFArd,EAAIif,EAAEhqC,KAAK,KAAO,IAAM+qB,EAAI,IAExB,GAAMud,EAAIoC,EAAG,CAGf,OAFA,IAAMpC,GAAKC,EAAExd,EAAG,KAAO2f,EAAI,GAEnBA,GACN,KAAK,IACH3f,EAAIA,EAAEluB,QAAQ8tC,EAAI,YAAc5f,EAChC,MAEF,KAAK,IACHA,EAAIA,EAAEluB,QAAQ+tC,EAAG,sBAAwB7f,EAAEluB,QAAQ+tC,EAAG,aAAe7f,EAAEluB,QAAQ+tC,EAAG,iBAAmB7f,EAGzG2f,EAAI,GAIR,OAAO/B,EAAI5d,EAAIqd,EA8PPuB,CAAEW,EAAGjnC,EAAGu5B,EAAG,EAAG,GAKtB,OAJA,EAAIyM,SAAmD,KAA7CthB,EAAIohB,GAAG,EAAGnlB,EAAG3gB,EAAGA,EAAGomC,EAAGC,EAAG1lB,EAAEnc,OAAQ,EAAG,EAAG,MAAqBmc,EAAI+D,IACxE,GACJ2iB,EAAI,EACJhB,EAAID,EAAI,EACDzlB,EAGT,IAAIqmB,EAAK,QACLD,EAAI,YACJ1B,EAAK,OACLD,EAAK,UACLK,EAAK,sBACLb,EAAK,SACLG,EAAI,oBACJoC,EAAK,qBACLI,EAAI,aACJD,EAAK,gBACLhC,EAAI,qBACJ4B,EAAK,kBACLrB,EAAK,eACLN,EAAK,eACLI,EAAK,8BACLH,EAAK,mCACLL,EAAK,sBACLkB,EAAI,EACJD,EAAI,EACJiB,EAAI,EACJpC,EAAI,EACJgC,EAAI,GACJhB,EAAI,GACJD,EAAI,EACJN,EAAI,KACJ0B,EAAI,EAKR,OAHAlB,EAAEsB,IApEF,SAASC,EAAE9c,GACT,OAAQA,GACN,UAAK,EACL,KAAK,KACHqb,EAAIC,EAAEzhC,OAAS,EACf,MAEF,QACE,GAAI,mBAAsBmmB,EAAGsb,EAAED,KAAOrb,OAAO,GAAI,iBAAoBA,EAAG,IAAK,IAAI4O,EAAI,EAAGv5B,EAAI2qB,EAAEnmB,OAAQ+0B,EAAIv5B,IAAKu5B,EAC7GkO,EAAE9c,EAAE4O,SACC6N,EAAU,IAAJzc,EAGjB,OAAO8c,GAwDTvB,EAAEziC,IAAM0iC,OACR,IAAWzB,GAAKyB,EAAEzB,GACXwB,G,UCzlBT,SAASwB,EAAQC,GACXA,GACFC,EAAMxsC,QAAQ01B,OAAO6W,EAAQ,KAIjC,IAAIC,EAAQ,CACVxsC,QAAS,MAGPysC,EAAY,SAAmBzuB,EAAShQ,EAAS0+B,EAAWC,EAAS5+B,EAAM6+B,EAAQxjC,EAAQyjC,EAAIC,EAAOC,GACxG,OAAQ/uB,GAEN,KAAK,EAED,OAAQhQ,EAAQiM,WAAW,IACzB,KAAK,GAID,OADAuyB,EAAMxsC,QAAQ01B,OAAO1nB,EAAU,KACxB,GAIX,KAAK,IAID,GAA8B,KAA1BA,EAAQiM,WAAW,GACrB,MAAO,GAKf,MAIJ,KAAK,EAED,GAAW,IAAP4yB,EAAU,OAAO7+B,EA3Cb,QA4CR,MAIJ,KAAK,EAED,OAAQ6+B,GAEN,KAAK,IACL,KAAK,IAGD,OADAL,EAAMxsC,QAAQ01B,OAAOgX,EAAU,GAAK1+B,GAC7B,GAGX,QAEI,OAAOA,GAAkB,IAAP++B,EA7DhB,QA6DuC,IAKnD,KAAM,EAEF/+B,EAAQvC,MAnEHuhC,UAmEiBzpC,QAAQ+oC,KAsIvB,IAjIG,SAAqBjmC,QACrB2E,IAAZ3E,IAAuBA,EAAU,IACrC,IACI4mC,EADAvmC,EAAML,EAAQK,KAAO,WAGFsE,IAAnB3E,EAAQjH,SACV6tC,EAAgB,CACd7tC,OAAQiH,EAAQjH,SAIpB,IAAI8tC,EAAS,IAAI,EAAOD,GASxB,IAEIE,EAFA1X,EAAW,GAIb0X,EAAY9mC,EAAQ8mC,WAAax3B,SAASy3B,KAC1C,IAcEC,EAdEC,EAAQ33B,SAAS43B,iBAAiB,sBAAwB7mC,EAAM,KACpEyO,MAAMnT,UAAUuB,QAAQzC,KAAKwsC,GAAO,SAAUntB,GAC/BA,EAAKqtB,aAAa,gBAAkB9mC,GAE1C+E,MAAM,KAAKlI,SAAQ,SAAUmqB,GAClC+H,EAAS/H,IAAM,KAGbvN,EAAKstB,aAAeN,GACtBA,EAAUO,YAAYvtB,MAQ1B+sB,EAAOd,IAAI/lC,EAAQsnC,cAAnBT,CAAkCT,GAElCY,EAAU,SAAgB/O,EAAU9I,EAAYG,EAAOiY,GACrD,IAAIzkC,EAAOqsB,EAAWrsB,KACtBqjC,EAAMxsC,QAAU21B,EAWhBuX,EAAO5O,EAAU9I,EAAW3oB,QAExB+gC,IACFlmC,EAAM+tB,SAAStsB,IAAQ,IAqD7B,IAAIzB,EAAQ,CACVhB,IAAKA,EACLivB,MAAO,IAAI,IAAW,CACpBjvB,IAAKA,EACLymC,UAAWA,EACXU,MAAOxnC,EAAQwnC,MACfzX,OAAQ/vB,EAAQ+vB,SAElByX,MAAOxnC,EAAQwnC,MACfpY,SAAUA,EACVpL,WAAY,GACZqL,OAAQ2X,GAEV,OAAO3lC,I,wNC3MIomC,EAAsB,CACjCpgB,GAAG,mBACHlsB,MAAO,CACLsQ,SAAS,WACTi8B,IAAK,EACL3e,MAAO,EACPC,OAAQ,EACR2e,QAAS,EACTC,SAAS,SACTC,KAAK,mBACLC,WAAW,SACXC,OAAQ,GAEV,YAAY,YACZ,cAAc,Q,oCCJVC,EAAcC,EAAU7/B,QAAO,SAACzC,EAAKuiC,GAEzC,OADAviC,EAAIuiC,EAASC,UAAYD,EAClBviC,IACN,IAEH,SAASyiC,EAAcjsC,GACrB,IAAM+rC,EAAWF,EAAY7rC,GAE7B,OAAgB,MAAZ+rC,IASF7sC,OAAO6E,WAAWgoC,EAASG,SACpB,GAMX,IAAMC,EAAmB,SAACpsC,EAAUqsC,GAC7BH,EAAclsC,EAASC,WAC1Byf,oBAAU,mBAAoB,CAAE1f,WAAUqsC,kBAIxCC,EAAgB,SAACtsC,EAAUqsC,GAC1BH,EAAclsC,EAASC,WAC1Byf,oBAAU,gBAAiB,CAAE1f,WAAUqsC,kBAUrCtwC,EAAW,SAAC8D,EAAIiE,GAIpB,QAJqC,IAAjBA,MAAU,IAI1B,iBAAOjE,EAAX,CAJqC,IAS/BI,EAAavD,oBAAUmD,GAAvBI,SACA+rC,EAAWF,EAAY7rC,GAW7B,GAPI+rC,IACFnsC,EAAKmsC,EAASG,OACdlsC,EAAWvD,oBAAUmD,GAAII,UAKvBd,OAAOkqB,aACTlqB,OAAOa,SAAWC,MADpB,CAOA,IAAMssC,EAAYxwB,YAAW,WAC3BlM,IAAQM,KAAR,6BAA2C,CAAElQ,aAC7Cyf,oBAAU,uBAAwB,CAChC1f,SAAUb,OAAOa,aAElB,KAEHyZ,UAAO+yB,SAASvsC,GAAU6Z,MAAK,SAAAsF,GAO7B,IAAKA,GAAiBA,EAAcqtB,SAAWC,qBAAmBl5B,MAIhE,OAHArU,OAAOgW,QAAQgB,aAAa,GAA5B,GAAoCnW,SAASiD,MAC7C9D,OAAOa,SAAWC,OAClBkc,aAAaowB,GAM8BntB,GAEzCA,EAAcQ,KAAK+sB,yBACnBxtC,OAAOytC,4BAIL,kBAAmBxmB,WACoB,OAAvCA,UAAU0C,cAAcM,YACxB,cAAAhD,UAAU0C,cAAcM,WAAW/pB,OAEnC+mB,UAAU0C,cAAcM,WAAWyjB,YAAY,CAC7CC,UAAU,uBAId3tC,OAAOa,SAAWC,GAGtB8sC,mBAAcltC,EAAIiE,GAClBqY,aAAaowB,YAlEbj1B,IAAcvb,SAAS8D,IAsE3B,SAAS6d,EAAmBM,EAA5B,GAA4D,IAAD,OAAZhe,EAAY,EAAZA,SACrCC,EAAmBD,EAAnBC,SAAU2U,EAAS5U,EAAT4U,KACZo4B,EAAUttB,oBAAU,qBAAsB,CAC9C1B,kBAEA/d,WACAge,YAAa,CAAEje,YACfitC,uBAAwB,SAAAlgC,GAAI,MAAI,CAC9B,EACA,EAAKuQ,cAAcpZ,KAAK6I,EAAMA,EAAK5I,SAGvC,GAAI6oC,EAAQnmC,OAAS,EAGnB,OAAOmmC,EAAQA,EAAQnmC,OAAS,GAGlC,GAAImX,GAGEA,EADFhe,SAAYC,WAEMA,EAGlB,OAAO2U,EAAOM,UAAUN,EAAKxX,MAAM,IAAM,CAAC,EAAG,GAGjD,OAAO,E,IAkBH8vC,E,YACJ,WAAY7uC,GAAQ,IAAD,SACjB,cAAMA,IAAN,MACK8uC,gBAAkBn6B,IAAMo6B,YAFZ,E,4CAKnB1tC,mBAAA,SAAmBC,EAAWyU,GAAY,IAAD,OACvCi5B,uBAAsB,WACpB,IAAIC,EAAQ,eAAkB,EAAKjvC,MAAM2B,SAASC,SAC9CmT,SAASia,QACXigB,EAAWl6B,SAASia,OAEtB,IAAMkgB,EAAen6B,SAAS43B,iBAAT,4BACjBuC,GAAgBA,EAAa1mC,SAC/BymC,EAAWC,EAAa,GAAGjM,aAE7B,IAAMkM,EAAe,gBAAmBF,EACpC,EAAKH,gBAAgB1vC,UACC,EAAK0vC,gBAAgB1vC,QAAQgwC,YAC7BD,IACtB,EAAKL,gBAAgB1vC,QAAQgwC,UAAYD,Q,EAMjDlsC,OAAA,WACE,OAAO,iCAASiqC,EAAT,CAA8B7qC,IAAKlC,KAAK2uC,oB,GA3BtBn6B,IAAM9P,WA+B7BwqC,EAAuB,SAACrB,EAAcsB,GAAkB,IAAD,IAC3D,OAAItB,EAAappC,OAAS0qC,EAAa1qC,OAInCopC,SAAA,UAAAA,EAAchtC,aAAd,eAAqB8E,QAAQwpC,SAA7B,UAA6BA,EAActuC,aAA3C,aAA6B,EAAqB8E,MAQlDypC,E,YACJ,WAAYvvC,GAAQ,IAAD,SACjB,cAAMA,IAAN,KACA+tC,EAAiB/tC,EAAM2B,SAAU,MAFhB,E,4CAKnBE,kBAAA,WACEosC,EAAc9tC,KAAKH,MAAM2B,SAAU,O,EAGrCmU,sBAAA,SAAsBxU,GACpB,QAAI+tC,EAAqB/tC,EAAUK,SAAUxB,KAAKH,MAAM2B,YACtDosC,EAAiB5tC,KAAKH,MAAM2B,SAAUL,EAAUK,WACzC,I,EAKXN,mBAAA,SAAmBC,GACb+tC,EAAqB/tC,EAAUK,SAAUxB,KAAKH,MAAM2B,WACtDssC,EAAc9tC,KAAKH,MAAM2B,SAAUL,EAAUK,W,EAIjDsB,OAAA,WACE,OACE,YAAC,IAAM6Q,SAAP,KACG3T,KAAKH,MAAMoP,SACZ,YAAC,EAAD,CAAgBzN,SAAUA,a,GA5BPgT,IAAM9P,W,6CCzNjC,SAAS2qC,EAAe7qB,EAAGC,GACzB,IAAK,IAAI1a,KAAKya,EACZ,KAAMza,KAAK0a,GAAI,OAAO,EACvB,IAAK,IAAImF,KAAMnF,EACd,GAAID,EAAEoF,KAAQnF,EAAEmF,GAAK,OAAO,EAC7B,OAAO,E,6kBCyFK0lB,E,YA3Fb,WAAYzvC,GAAQ,IAAD,EACjB,qBADiB,IAET2B,EAA4B3B,EAA5B2B,SAAUof,EAAkB/gB,EAAlB+gB,cAFD,OAGjB,EAAK/f,MAAQ,CACXW,SAAS,EAAD,GAAOA,GACfof,cAAeA,GAAiB3F,UAAOs0B,aAAa/tC,EAASC,WAL9C,E,mBASZuG,yBAAP,WAA8C5G,GAAY,IAAxBI,EAAuB,EAAvBA,SAChC,OAAIJ,EAAUI,SAASiD,OAASjD,EAASiD,KAEhC,CACLmc,cAFoB3F,UAAOs0B,aAAa/tC,EAASC,UAGjDD,SAAS,EAAD,GAAOA,IAIZ,CACLA,SAAS,EAAD,GAAOA,K,2BAInBguC,cAAA,SAAcC,GAAU,IAAD,OACrBx0B,UAAO+yB,SAASyB,GAASn0B,MAAK,SAAAsF,GACxBA,GAAiBA,EAAcqtB,SAAWC,qBAAmBl5B,MAC/D,EAAK2H,SAAS,CACZnb,SAAS,EAAD,GAAOb,OAAOa,UACtBof,mBAGFjgB,OAAOgW,QAAQgB,aAAa,GAA5B,GAAoCnW,SAASiD,MAC7C9D,OAAOa,SAAWiuC,O,EAKxB95B,sBAAA,SAAsBC,EAAW85B,GAE/B,OAAKA,EAAU9uB,cAcX5gB,KAAKa,MAAM+f,gBAAkB8uB,EAAU9uB,gBAIzC5gB,KAAKa,MAAM+f,cAAc9X,YAAc4mC,EAAU9uB,cAAc9X,YAK7D9I,KAAKa,MAAM+f,cAAcC,OAAS6uB,EAAU9uB,cAAcC,SAM5D7gB,KAAKa,MAAMW,SAASmE,MAAQ+pC,EAAUluC,SAASmE,MAC/C+pC,EAAU9uB,cAAcQ,OACvBsuB,EAAU9uB,cAAcQ,KAAKlW,YAC5BwkC,EAAU9uB,cAAcQ,KAAKlkB,ODlErB,gBACd,OAAOmyC,EAAevtC,EAASjC,MAAO+V,IAAcy5B,EAAevtC,EAASjB,MAAO6uC,GCqE1E/qB,CAAe3kB,KAAM4V,EAAW85B,OAnCrC1vC,KAAKwvC,cAAc55B,EAAUpU,SAASC,WAC/B,I,EAqCXqB,OAAA,WASE,OAAO9C,KAAKH,MAAMoP,SAASjP,KAAKa,Q,GAxFN2T,IAAM9P,W,wBCwB9BuW,EAAS,IAAI00B,aAAWC,IAAevlC,GAC7CwlC,oBAAU50B,GACVA,EAAO60B,aAAa5uB,aAEpBvgB,OAAOivC,cAAgBA,IACvBjvC,OAAOovC,WAAa1+B,IACpB1Q,OAAOW,UAAY6f,eHiIjBrI,IAAc7B,QAAO,SAAA1I,GACnBA,EAAK/M,SAAS4V,OAAS7I,EAAK6I,UAG9BzW,OAAO4E,QAAU,SAAAlE,GAAE,OAAI9D,EAAS8D,EAAI,CAAEhE,SAAS,KAC/CsD,OAAO6E,WAAa,SAAAnE,GAAE,OAAI9D,EAAS8D,EAAI,CAAEhE,SAAS,KAClDsD,OAAO6D,YAAc,SAACnD,EAAIiE,GAAL,OAAiB/H,EAAS8D,EAAIiE,IAGnDooC,EAAc/sC,OAAOa,SAASC,UGtIhCuuC,yBAAe,iBAAiB10B,MAAK,WAG/B4F,oBAAU,yBAAyB7Y,OAAS,GAC9CxL,EAAQ,QAWV,IAAMozC,EAAe,SAAApwC,GAAK,OACxB,YAAC,cAAY0T,SAAb,CACEzN,MAAO,CACLoqC,QAAQ,IACRC,SAAS,MAGX,YAAC,IAAiBtwC,KAIhBuwC,EAAc57B,IAAMxB,cAAc,IAElCq9B,EA5BmC,kGA6BvCvtC,OAAA,WAAU,IACAmM,EAAajP,KAAKH,MAAlBoP,SACR,OACE,YAAC,WAAD,MACG,gBAAGzN,EAAH,EAAGA,SAAH,OACC,YAAC,EAAD,CAAiBA,SAAUA,IACxB,YAAkC,IAA/Bof,EAA8B,EAA9BA,cAAepf,EAAe,EAAfA,SACX8uC,EAAqBC,kCAC3B,OACE,YAAC,qBAAmBh9B,SAApB,CAA6BzN,MAAOwqC,GAClC,YAACF,EAAY78B,SAAb,CAAsBzN,MAAO,CAAE8a,gBAAepf,aAC3CyN,WAxCoB,GA4BhBuF,IAAM9P,WAwBzB8rC,EApDmC,kGAqDvC1tC,OAAA,WAAU,IAAD,OACP,OACE,YAACstC,EAAYnjB,SAAb,MACG,gBAAGrM,EAAH,EAAGA,cAAepf,EAAlB,EAAkBA,SAAlB,OACC,YAAC,EAAD,CAAcA,SAAUA,GACtB,YAAC,gBAAD,CACEA,SAAUA,EACV0d,mBAAoBA,GAEpB,YAAC,SAAD,CACEixB,SAAUrxC,GACV0C,SAAUA,EACVmrB,GAAG,wBAEH,YAACsjB,EAAD,aACE/yC,KACE,cAAA0jB,EAAcQ,KAAKlkB,KACfuN,YAAYjJ,EAASC,SAAU3C,IAC/ByF,UACEqc,EAAcQ,KAAKlW,WACjB0V,EAAcQ,KAAKlkB,OAGzB,EAAK2C,MATX,CAUE2B,SAAUA,EACVof,cAAeA,GACXA,EAAcC,cA/EK,GAoDXrM,IAAM9P,WApDK,EA0FE/D,OAAnC8vC,EA1FiC,EA0FjCA,SAAoBC,EA1Fa,EA0FvBlvC,SAUhBivC,GACA3xC,GAAgB2xC,IAAaC,EAAWjvC,YAEtCwZ,EAAOpQ,cAAcJ,YAAYimC,EAAWjvC,SAAU3C,MAC9C,cAAR2xC,GACAA,EAAS/uB,MAAM,eACf+uB,EAAS/uB,MAAM,8CAGjBnkB,mBAASuB,GAAgB2xC,EAAWC,EAAWv6B,OAASu6B,EAAWt6B,KAAM,CACvE/Y,SAAS,IAIb8jB,eAAa6sB,SAAS0C,EAAWjvC,UAAU6Z,MAAK,SAAA8F,GAC9C,IAAKA,GAAQA,EAAK6sB,SAAWC,qBAAmBl5B,MAC9C,MAAM,IAAIA,MAAJ,sBACkB07B,EAAWjvC,SAD7B,mCAKRd,OAAOytC,0BAA4BhtB,EAAKA,KAAK+sB,uBAE7C,IAAMwC,EAAWzvB,oBAAU,kBAEzB,CAAErB,QAAS,YAAC2wB,EAAD,OACX,YAACA,EAAD,OACA,YACE,MAAO,CAAE3wB,QADK,EAAblE,WAGHzL,MAEI0gC,EAAM,kBAAM,YAACP,EAAD,KAAaM,IAEzBE,EAAW3vB,oBAAU,8BAEzBjX,EACA6mC,IAAS5a,SACT,GAEF6a,KAAS,WACPF,EACE,YAACD,EAAD,MACA,oBAAOjwC,OACHiU,SAASyK,eAAT,kBACA,GACJ,WACE6B,oBAAU,sC,mBCzLpBta,EAAO9J,QAAU,syC,mBCMjB8J,EAAO9J,QANP,SAAwBwY,EAAUC,GAChCD,EAASrU,UAAYiG,OAAOsG,OAAO+H,EAAWtU,WAC9CqU,EAASrU,UAAUmO,YAAckG,EACjCA,EAASnG,UAAYoG,I,kCCHvB,62BAeMy7B,EAAmB/1B,UAAO1Z,QAE1B0vC,EAAqBz8B,IAAMxB,cAAc,IAE/C,SAASk+B,EAAT,GAA4E,IAAzCC,EAAwC,EAAxCA,gBAAiB/d,EAAuB,EAAvBA,KAAMxP,EAAiB,EAAjBA,MAAO9gB,EAAU,EAAVA,OACzDsuC,EAAYhe,EACdA,EAAKA,KACL+d,EAAgBvtB,IAAUutB,EAAgBvtB,GAAOwP,KAErD,OACE,YAAC,IAAMzf,SAAP,KACGy9B,GAAatuC,EAAOsuC,IACnBA,GAAa,iDAKrB,IAAMC,EAAc,SAAAxxC,GAAU,IACpBuzB,EAAkCvzB,EAAlCuzB,KAAMxP,EAA4B/jB,EAA5B+jB,MAAO9gB,EAAqBjD,EAArBiD,OAAQmM,EAAapP,EAAboP,SAE7B,OACE,YAACgiC,EAAmBhkB,SAApB,MACG,SAAAkkB,GAAe,OACd,YAACD,EAAD,CACE9d,KAAMA,EACNxP,MAAOA,EACP9gB,OAAQA,GAAUmM,EAClBkiC,gBAAiBA,QAOrBG,EAAiB,SAAA1tB,GAAU,IAAD,EAErBpP,IAAM9D,WAQf,IAAMuM,EAAUzI,IAAM9D,WAAWugC,GAKjC,GAAIM,MAAMC,OAAO5tB,IACf,MAAM,IAAI5O,MAAJ,8KAIgB4O,EAJhB,SAQR,aAAI3G,EAAQ2G,UAAZ,aAAI,EAAgBwP,KAClB,OAAOnW,EAAQ2G,GAAOwP,KAEtB,MAAM,IAAIpe,MACR,yMAcN,SAAS4sB,IACP,MAAM,IAAI5sB,MACR,gV,mBCnFJpO,EAAO9J,QAVP,SAA2BwkB,EAAK9S,IACnB,MAAPA,GAAeA,EAAM8S,EAAIjZ,UAAQmG,EAAM8S,EAAIjZ,QAE/C,IAAK,IAAI0B,EAAI,EAAG0nC,EAAO,IAAIr9B,MAAM5F,GAAMzE,EAAIyE,EAAKzE,IAC9C0nC,EAAK1nC,GAAKuX,EAAIvX,GAGhB,OAAO0nC,I,woBCPT,IAAMj9B,EAAQ3X,EAAd,QACQ66B,EAAQ76B,EAAQ,QAAhB66B,IACAle,EAAgB3c,EAAQ,QAAxB2c,YAER5S,UAAiB,SAAqB,GAIlC,IAHF6S,EAGC,EAHDA,MACAxK,EAEC,EAFDA,SACGpP,EACF,0BACK6xC,EAAWl4B,EADhB,GAIKm4B,EAAMn9B,EAAA,SAAc,WACxB,MACE,OAAO,KAGT,IAAMo9B,EAAS,GAGbp9B,MAHa,EAIbkjB,OAJF,GAQM/tB,EAAOzC,YAAb,GACM2qC,EAASloC,EAAA,KAAS,SAAAhE,GAAG,OAAIisC,EAAJ,MAG3B,OAFQ,mCAAR,KAEOzgC,2BAAP,OACC,CAAClC,EAlBJ,IAoBA,OAAOuF,uBAAP,M,mBChCF5N,EAAO9J,QAAU,85C,iFCEjB8J,EAAO9J,QAAUoK,OAAOyF,Q,kCCFxB,m8BAAID,EAAWxF,OAAOyF,QAAU,SAAUjK,GAAU,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CAAE,IAAI6C,EAASpE,UAAUuB,GAAI,IAAK,IAAIpE,KAAOiH,EAAc1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAAQjD,EAAOiD,GAAOiH,EAAOjH,IAAY,OAAOjD,GAEvP,SAAS+P,EAAyB5L,EAAK8C,GAAQ,IAAIjH,EAAS,GAAI,IAAK,IAAIqH,KAAKlD,EAAW8C,EAAKyE,QAAQrE,IAAM,GAAkB7C,OAAOjG,UAAUqB,eAAevC,KAAK8G,EAAKkD,KAAcrH,EAAOqH,GAAKlD,EAAIkD,IAAM,OAAOrH,EAEnN,SAAS4X,EAAgBxY,EAAUyY,GAAe,KAAMzY,aAAoByY,GAAgB,MAAM,IAAIV,UAAU,qCAEhH,SAASW,EAA2BC,EAAM1a,GAAQ,IAAK0a,EAAQ,MAAM,IAAIC,eAAe,6DAAgE,OAAO3a,GAAyB,iBAATA,GAAqC,mBAATA,EAA8B0a,EAAP1a,EAElO,SAAS4a,EAAUrF,EAAUC,GAAc,GAA0B,mBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIsE,UAAU,kEAAoEtE,GAAeD,EAASrU,UAAYiG,OAAOsG,OAAO+H,GAAcA,EAAWtU,UAAW,CAAEmO,YAAa,CAAEtJ,MAAOwP,EAAU/I,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe+I,IAAYrO,OAAO0T,eAAiB1T,OAAO0T,eAAetF,EAAUC,GAAcD,EAASnG,UAAYoG,GAaje,IAAIu8B,EAAqB,SAA4B1pC,EAAM2pC,GACzD,IAAIC,EAAM,IAAcD,GAExB,OADAC,EAAInqC,YAAcO,EACX4pC,GAKLC,EAAkBH,EAAmB,YAIrCruC,EAAW,SAAkBnF,GAC/B,IAAI2Q,EAAW3Q,EAAK2Q,SACpB,OAAO,IAAMzL,cACXyuC,EAAgBhlB,SAChB,MACA,SAAUhQ,GACR,OAAOA,EAAUhO,EAASgO,GAAW,IAAMzZ,cACzC0uC,EACA,KACAjjC,OAMJijC,EAAmB,SAAUtyC,GAG/B,SAASsyC,IACP,IAAIn2B,EAAOjc,EAEXwa,EAAgBta,KAAMkyC,GAEtB,IAAK,IAAItzB,EAAOpW,UAAUH,OAAQkG,EAAO6F,MAAMwK,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC3EtQ,EAAKsQ,GAAQrW,UAAUqW,GAGzB,OAAe9C,EAASjc,EAAQ0a,EAA2Bxa,KAAMJ,EAAiBG,KAAK8M,MAAMjN,EAAkB,CAACI,MAAM4J,OAAO2E,KAAiBzO,EAAMe,MAAQ,CAC1Joc,QAASnd,EAAMqyC,aACfC,KAAM,CAAEC,SAAU,OACT73B,EAA2B1a,EAAnCic,GAkEL,OAhFApB,EAAUu3B,EAAkBtyC,GAiB5BsyC,EAAiBjxC,UAAUkxC,WAAa,WACtC,IAAIG,EAAiBtyC,KAAKH,MAAM8W,QAIhC,MAAO,CAAEpZ,SAHM+0C,EAAe/0C,SAGDiE,SAFd8wC,EAAe9wC,WAKhC0wC,EAAiBjxC,UAAUsxC,kBAAoB,SAA2Bl3B,EAAOm3B,GAC/E,IAAIC,EAAWp3B,GAKb,MAAMA,GAFNq3B,EAFgB1yC,KAAKH,MAAM8W,QAAQpZ,UAEzB8d,EAAM7C,IAAK,CAAEnb,SAAS,KAMpC60C,EAAiBjxC,UAAUC,mBAAqB,SAA4BC,EAAWC,GACjFA,EAAU6b,QAAQzb,WAAaxB,KAAKa,MAAMoc,QAAQzb,UACpDxB,KAAKH,MAAM8W,QAAQK,yBAIvBk7B,EAAiBjxC,UAAUS,kBAAoB,WAC7C,IAAIU,EAASpC,KAEToyC,EAAOpyC,KAAKa,MAAMuxC,KAClBz7B,EAAU3W,KAAKH,MAAM8W,QAEzBA,EAAQK,wBACRo7B,EAAKC,SAAW17B,EAAQM,QAAO,WAC7Ba,QAAQ5Y,UAAUoc,MAAK,WAErBuzB,uBAAsB,WACfzsC,EAAOuwC,WACVvwC,EAAOua,UAAS,WACd,MAAO,CAAEM,QAAS7a,EAAO+vC,2BAQrCD,EAAiBjxC,UAAUU,qBAAuB,WAChD,IAAIywC,EAAOpyC,KAAKa,MAAMuxC,KAEtBpyC,KAAK2yC,WAAY,EACjBP,EAAKC,YAGPH,EAAiBjxC,UAAU6B,OAAS,WAClC,IAAIma,EAAUjd,KAAKa,MAAMoc,QACrBhO,EAAWjP,KAAKH,MAAMoP,SAE1B,OAAO,IAAMzL,cACXyuC,EAAgB1+B,SAChB,CAAEzN,MAAOmX,GACW,mBAAbhO,EAA0BA,EAASgO,GAAWhO,GAAY,OAI9DijC,EAjFc,CAkFrB,IAAMxtC,WAKRwtC,EAAiBtqC,aAAe,CAC9B+O,QAAS,KAKX,IAAIi8B,EAAiB,SAAwB1yC,GAC3C,IAAI6qB,EAAM7qB,EAAM6qB,IACZ9b,EAAW/O,EAAM+O,SAEjBiJ,EAAc6S,EAAI3c,QAAQ,KAE1B3M,OAAW,EACX0U,EAAS,GAUb,OAZmB+B,GAAe,GAMhCzW,EAAWspB,EAAIzL,UAAU,EAAGpH,GAC5B/B,EAAS4U,EAAIzL,UAAUpH,IAEvBzW,EAAWspB,EAGN,IAAMvnB,cACXyuC,EAAgB1+B,SAChB,CACEzN,MAAO,CACLtE,SAAU,CACRC,SAAUA,EACV0U,OAAQA,EACRC,KAhBG,IAkBL7Y,SAAU,WACR,MAAM,IAAIyX,MAAM,6CAItB/F,IAKA4jC,EAAcf,EAAmB,OAAQ,CAAE5B,QAAS,IAAKC,SAAU,MAInE2C,EAAS,SAAgBjzC,GAC3B,OAAO,IAAM2D,cACXqvC,EAAY5lB,SACZ,MACA,SAAU8lB,GACR,OAAO,IAAMvvC,cACXC,EACA,MACA,SAAUuvC,GACR,OAAO,IAAMxvC,cAAcyvC,EAAYvmC,EAAS,GAAIqmC,EAAaC,EAAiBnzC,WAOxFozC,EAAa,SAAUC,GAGzB,SAASD,IAGP,OAFA34B,EAAgBta,KAAMizC,GAEfz4B,EAA2Bxa,KAAMkzC,EAAqBrmC,MAAM7M,KAAMwI,YAgF3E,OArFAmS,EAAUs4B,EAAYC,GAQtBD,EAAWhyC,UAAU6B,OAAS,WAC5B,IAAIskC,EAASpnC,KAAKH,MACd2B,EAAW4lC,EAAO5lC,SAClB2xC,EAAa/L,EAAO7pC,SACpB4yC,EAAW/I,EAAO+I,SAClBiD,EAAUhM,EAAOgM,QACjBnkC,EAAWm4B,EAAOn4B,SAElBokC,GADUjM,EAAO8I,QACE9I,EAAOt+B,WAC1BA,OAAiCmB,IAArBopC,EAAiC,MAAQA,EACrDC,EAAW7gC,EAAyB20B,EAAQ,CAAC,WAAY,WAAY,WAAY,UAAW,WAAY,UAAW,cAEnH3lB,EAAS,IAAMvD,SAASq1B,QAAQtkC,GAAUvB,QAAO,SAAU8lC,EAAOlO,GACpE,IAAI7jB,EAASgyB,EAAYtD,EAAZsD,CAAsBnO,GACnC,OAAOkO,EAAM5pC,OAAO6X,KACnB,IACChgB,EAAWD,EAASC,SAGpBigB,EAAQ,eAAKD,EAAQhgB,GAEzB,GAAIigB,EAAO,CACT,IAAIlW,EAASkW,EAAMlW,OACfgN,EAAMkJ,EAAMlJ,IACZlN,EAAQoW,EAAMpW,MACduU,EAAU6B,EAAMpW,MAAMxF,MAI1BqqC,EAAW7kC,EAAM9N,QAAU2yC,EAAW7kC,EAAMpO,KAAKG,QAAQ,MAAO,IAEhE,IAAIwC,EAAQ6M,EAAS,GAAIlB,EAAQ,CAC/BgN,IAAKA,EACLhX,SAAUA,EACVjE,SAAU,SAAkB8D,EAAIiE,GAC9B,OAAO6tC,EAAW,kBAAQ9xC,EAAImX,GAAMlT,MAIpCu0B,EAAQ,IAAM6Z,aAAa7zB,EAAShgB,EAAOggB,EAAQhgB,MAAMoP,SAAW,IAAMzL,cAC5EsvC,EACA,CAAEtxC,SAAUA,EAAU4xC,QAASA,GAC/BvzB,EAAQhgB,MAAMoP,eACZhF,GAGA0pC,EAAeP,EAAUQ,EAAe9qC,EAExC+qC,EAAeT,EAAU1mC,EAAS,CAAE8L,IAAKA,EAAKhX,SAAUA,EAAUsH,UAAWA,GAAawqC,GAAYA,EAE1G,OAAO,IAAM9vC,cACXqvC,EAAYt/B,SACZ,CAAEzN,MAAO,CAAEoqC,QAAS13B,EAAK23B,SAAUA,IACnC,IAAM3sC,cACJmwC,EACAE,EACAha,IAiBJ,OAAO,MAIJoZ,EAtFQ,CAuFf,IAAMa,eAERb,EAAWrrC,aAAe,CACxBwrC,SAAS,GAIX,IAAIW,EAAejC,EAAmB,SAElC8B,EAAe,SAAsBlwC,GACvC,IAAI8U,EAAM9U,EAAM8U,IACZhX,EAAWkC,EAAMlC,SACjBsH,EAAYpF,EAAMoF,UAClBwqC,EAAW7gC,EAAyB/O,EAAO,CAAC,MAAO,WAAY,cAEnE,OAAO,IAAMF,cACXuwC,EAAa9mB,SACb,MACA,SAAU+mB,GACR,OAAO,IAAMxwC,cAAcywC,EAAkBvnC,EAAS,GAAI4mC,EAAU,CAClExqC,UAAWA,EACXkrC,aAAcA,EACdx7B,IAAKA,EACLhX,SAAUA,SAOd0yC,GAAgB,EAChBC,EAAoB,EAEpBF,EAAmB,SAAUj2B,GAG/B,SAASi2B,IACP,IAAIG,EAAQC,EAEZ/5B,EAAgBta,KAAMi0C,GAEtB,IAAK,IAAIle,EAAQvtB,UAAUH,OAAQkG,EAAO6F,MAAM2hB,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IAChFznB,EAAKynB,GAASxtB,UAAUwtB,GAG1B,OAAgBoe,EAAUC,EAAS75B,EAA2Bxa,KAAMge,EAAkBje,KAAK8M,MAAMmR,EAAmB,CAAChe,MAAM4J,OAAO2E,KAAkB8lC,EAAOxzC,MAAQ,GAAIwzC,EAAOL,aAAe,SAAU50B,IAChMi1B,EAAOxzC,MAAMyzC,aAAel1B,GAC/BA,EAAKm1B,SAEG/5B,EAA2B65B,EAApCD,GA4FL,OA3GAz5B,EAAUs5B,EAAkBj2B,GAkB5Bi2B,EAAiBjsC,yBAA2B,SAAkC4N,EAAWxU,GAEvF,GAD+B,MAAjBA,EAAUoX,IAEtB,OAAO9L,EAAS,CACd4nC,aAAa,GACZ1+B,GAEH,IAAI4+B,EAAe5+B,EAAU4C,MAAQpX,EAAUoX,IAC3Ci8B,EAAkBrzC,EAAUI,SAASC,WAAamU,EAAUpU,SAASC,UAAYmU,EAAUpU,SAASC,WAAamU,EAAU4C,IAC/H,OAAO9L,EAAS,CACd4nC,YAAaE,GAAgBC,GAC5B7+B,IAIPq+B,EAAiBhzC,UAAUS,kBAAoB,WAC7CyyC,IACAn0C,KAAKu0C,SAGPN,EAAiBhzC,UAAUU,qBAAuB,WAEtB,MAD1BwyC,IAEED,GAAgB,IAIpBD,EAAiBhzC,UAAUC,mBAAqB,SAA4BC,EAAWC,GACjFD,EAAUK,WAAaxB,KAAKH,MAAM2B,UAAYxB,KAAKa,MAAMyzC,aAC3Dt0C,KAAKu0C,SAITN,EAAiBhzC,UAAUszC,MAAQ,WAQjC,IAAIP,EAAeh0C,KAAKH,MAAMm0C,aAG1BA,EACFA,EAAah0C,KAAKof,MAEd80B,EACFA,GAAgB,EACPl0C,KAAKof,OAGTpf,KAAKof,KAAKs1B,SAAS9/B,SAAS+/B,gBAC/B30C,KAAKof,KAAKm1B,UAMlBN,EAAiBhzC,UAAU6B,OAAS,WAClC,IAAI8xC,EAAS50C,KAET60C,EAAU70C,KAAKH,MAEfY,GADWo0C,EAAQ5lC,SACX4lC,EAAQp0C,OAEhBq0C,GADeD,EAAQb,aACHa,EAAQ/rC,WAC5BisC,OAA6B9qC,IAAtB6qC,EAAkC,MAAQA,EAGjDxB,GAFMuB,EAAQr8B,IACHq8B,EAAQrzC,SACRiR,EAAyBoiC,EAAS,CAAC,WAAY,QAAS,eAAgB,YAAa,MAAO,cAE3G,OAAO,IAAMrxC,cACXuxC,EACAroC,EAAS,CACPjM,MAAOiM,EAAS,CAAEsoC,QAAS,QAAUv0C,GACrC8zB,SAAU,KACVryB,IAAK,SAAa+X,GAChB,OAAO26B,EAAOx1B,KAAOnF,IAEtBq5B,GACH,IAAM9vC,cACJuwC,EAAaxgC,SACb,CAAEzN,MAAO9F,KAAKg0C,cACdh0C,KAAKH,MAAMoP,YAKVglC,EA5Gc,CA6GrB,IAAMvvC,WAER,mBAASuvC,GAET,IAAI9lC,EAAI,aAGJ9I,EAAa,IAAMA,gBAEG,IAAfA,IACTA,EAAa,SAAoBglC,GAC/B,OAAOA,IAIX,IAAIzmC,EAAOyB,GAAW,SAAU4vC,EAAO/yC,GACrC,IAAIG,EAAW4yC,EAAM5yC,SACjBxC,EAAQ4S,EAAyBwiC,EAAO,CAAC,aAE7C,OAAO,IAAMzxC,cACXqvC,EAAY5lB,SACZ,MACA,SAAUioB,GACOA,EAAM/E,SAArB,IACID,EAAUgF,EAAMhF,QACpB,OAAO,IAAM1sC,cACXC,EACA,MACA,SAAU0xC,GACR,IAAI3zC,EAAW2zC,EAAM3zC,SACjBjE,EAAW43C,EAAM53C,SAEjB8D,EAAKxB,EAAMwB,GACXR,EAAQhB,EAAMgB,MACdxD,EAAUwC,EAAMxC,QAChB+3C,EAAkBv1C,EAAMqD,SACxBA,OAA+B+G,IAApBmrC,EAAgCjnC,EAAIinC,EAC/CC,EAAc5iC,EAAyB5S,EAAO,CAAC,KAAM,QAAS,UAAW,aAEzE4E,EAAO,kBAAQpD,EAAI6uC,GACnBoF,EAAc/wC,UAAUE,GACxBrE,EAAYoB,EAASC,WAAa6zC,EAClCn1C,EAAqB,qBAAWqB,EAASC,SAAU6zC,GAEvD,OAAO,IAAM9xC,cAAc,IAAKkJ,EAAS,CACvCxK,IAAKA,GAAOG,EACZ,eAAgBjC,EAAY,YAAS6J,GACpCorC,EAAanyC,EAAS,CAAE9C,UAAWA,EAAWD,mBAAoBA,EAAoBsE,KAAMA,EAAMjD,SAAUA,IAAa,CAC1HiD,KAAMA,EACNrB,QAAS,SAAiBmyC,GAExB,GADIF,EAAYjyC,SAASiyC,EAAYjyC,QAAQmyC,GACzCC,EAAeD,GAAQ,CACzBA,EAAMlxC,iBACN,IAAIC,EAAgBjH,EACpB,GAAuB,kBAAZA,GAAyB+C,EAAW,CAC7C,IAAIq1C,EAAkB/oC,EAAS,GAAIlL,EAASX,OAExC60C,GADMD,EAAgB9vC,IACV8M,EAAyBgjC,EAAiB,CAAC,SAE3DnxC,EAAgB,yBAAeoI,EAAS,GAAI7L,GAAQ60C,GAEtDn4C,EAASkH,EAAM,CACb5D,MAAOA,EACPxD,QAASiH,kBAkB3B,SAASqxC,EAAgBn9B,GACvBxY,KAAKwY,IAAMA,EARb5U,EAAKiE,YAAc,OAWnB,IAAI4qC,EAAa,SAAoB14B,GACnC,OAAOA,aAAa47B,GAGlBC,EAAa,SAAoBv0C,GACnC,MAAM,IAAIs0C,EAAgBt0C,IAGxBw0C,EAAe,SAAUC,GAG3B,SAASD,IAGP,OAFAv7B,EAAgBta,KAAM61C,GAEfr7B,EAA2Bxa,KAAM81C,EAAkBjpC,MAAM7M,KAAMwI,YAsCxE,OA3CAmS,EAAUk7B,EAAcC,GASxBD,EAAa50C,UAAUS,kBAAoB,WACzC,IAAIq0C,EAAU/1C,KAAKH,MACftC,EAAWw4C,EAAQx4C,SACnB8D,EAAK00C,EAAQ10C,GAEb20C,GADOD,EAAQ57B,KACG47B,EAAQ14C,SAC1BA,OAA8B4M,IAApB+rC,GAAuCA,EACjDn1C,EAAQk1C,EAAQl1C,MAEhBqvC,GADU6F,EAAQE,QACRF,EAAQ7F,SAClBrwC,EAAQ4S,EAAyBsjC,EAAS,CAAC,WAAY,KAAM,OAAQ,UAAW,QAAS,UAAW,YAExGj+B,QAAQ5Y,UAAUoc,MAAK,WACrB,IAAI46B,EAAa,kBAAQ70C,EAAI6uC,GAC7B3yC,EAAS,uBAAa24C,EAAYr2C,GAAQ,CAAExC,QAASA,EAASwD,MAAOA,QAIzEg1C,EAAa50C,UAAU6B,OAAS,WAC9B,IAAIqzC,EAAUn2C,KAAKH,MAEfwB,GADW80C,EAAQ54C,SACd44C,EAAQ90C,IAIb40C,GAHOE,EAAQh8B,KACLg8B,EAAQ94C,QACV84C,EAAQt1C,MACNs1C,EAAQF,SAClB/F,EAAUiG,EAAQjG,QAClBrwC,EAAQ4S,EAAyB0jC,EAAS,CAAC,WAAY,KAAM,OAAQ,UAAW,QAAS,UAAW,YAEpGD,EAAa,kBAAQ70C,EAAI6uC,GAE7B,OADK+F,GAASL,EAAW,uBAAaM,EAAYr2C,IAC3C,MAGFg2C,EA5CU,CA6CjB,IAAMnxC,WAEJ0xC,EAAW,SAAkBv2C,GAC/B,OAAO,IAAM2D,cACXqvC,EAAY5lB,SACZ,MACA,SAAUopB,GACR,IAAInG,EAAUmG,EAAMnG,QACpB,OAAO,IAAM1sC,cACXC,EACA,MACA,SAAUuvC,GACR,OAAO,IAAMxvC,cAAcqyC,EAAcnpC,EAAS,GAAIsmC,EAAiB,CAAE9C,QAASA,GAAWrwC,WAanGy2C,EAAQ,SAAeC,GACzB,IAAIr5C,EAAOq5C,EAAMr5C,KACb+R,EAAWsnC,EAAMtnC,SACrB,OAAO,IAAMzL,cACXqvC,EAAY5lB,SACZ,MACA,SAAUupB,GACR,IAAItG,EAAUsG,EAAMtG,QACpB,OAAO,IAAM1sC,cACXC,EACA,MACA,SAAUgzC,GACR,IAAIl5C,EAAWk5C,EAAOl5C,SAClBiE,EAAWi1C,EAAOj1C,SAElBk1C,EAAe,kBAAQx5C,EAAMgzC,GAC7Bv0B,EAAS,gBAAM+6B,EAAcl1C,EAASC,UAC1C,OAAOwN,EAAS,CACd1R,SAAUA,EACViE,SAAUA,EACVkgB,MAAO/F,EAASjP,EAAS,GAAIiP,EAAOnQ,OAAQ,CAC1CgN,IAAKmD,EAAOnD,IACZtb,KAAMA,IACH,cAWbuT,EAAc,WAChB,IAAIwM,EAAU,qBAAWg1B,GAEzB,IAAKh1B,EACH,MAAM,IAAIjI,MAAM,8JAGlB,OAAOiI,EAAQzb,UAGbm1C,EAAc,WAChB,IAAI15B,EAAU,qBAAWg1B,GAEzB,IAAKh1B,EACH,MAAM,IAAIjI,MAAM,8JAGlB,OAAOiI,EAAQ1f,UAGbq5C,EAAY,WACd,IAAI35B,EAAU,qBAAW41B,GAEzB,IAAK51B,EACH,MAAM,IAAIjI,MAAM,4JAGlB,IAAIxT,EAAWiP,IAEX+9B,EAAU,gBAAMvxB,EAAQkzB,SAAU3uC,EAASC,UAE/C,OAAO+sC,EAAUA,EAAQhjC,OAAS,MAGhCqrC,EAAW,SAAkB35C,GAC/B,IAAKA,EACH,MAAM,IAAI8X,MAAM,4EAElB,IAAIiI,EAAU,qBAAW41B,GAEzB,IAAK51B,EACH,MAAM,IAAIjI,MAAM,2JAGlB,IAAIxT,EAAWiP,IAEXimC,EAAe,kBAAQx5C,EAAM+f,EAAQizB,SACrCv0B,EAAS,gBAAM+6B,EAAcl1C,EAASC,UAC1C,OAAOka,EAASjP,EAAS,GAAIiP,EAAOnQ,OAAQ,CAC1CgN,IAAKmD,EAAOnD,IACZtb,KAAMA,IACH,MAKH45C,EAAe,SAAsBxuB,GACvC,OAAOA,EAAIjrB,QAAQ,eAAgB,KAGjCo2C,EAAc,SAASA,EAAYtD,GACrC,OAAO,SAAUtwB,GACf,IAAKA,EACH,OAAO,KAGT,GAAIA,EAAQ3X,OAAS,IAAMyL,UAAYkM,EAAQhgB,MAAMoP,SACnD,OAAO,IAAMiP,SAASjT,IAAI4U,EAAQhgB,MAAMoP,SAAUwkC,EAAYtD,IAQhE,GANEtwB,EAAQhgB,MAAM3C,MAAQ2iB,EAAQhgB,MAAMrC,SAAWqiB,EAAQ3X,OAASkuC,GAAuN,KAAU,GAEhSv2B,EAAQ3X,OAASkuC,GAAcv2B,EAAQhgB,MAAMsa,MAAS0F,EAAQhgB,MAAMwB,IAAqN,KAAU,GAEnSwe,EAAQ3X,OAASkuC,GAAa,2BAAiBv2B,EAAQhgB,MAAMsa,KAAM0F,EAAQhgB,MAAMwB,KAA4O,KAAU,GAEtUwe,EAAQhgB,MAAMrC,QAChB,MAAO,CAAEsI,MAAO+Z,EAASriB,SAAS,GAGpC,IAAIu5C,EAAcl3B,EAAQ3X,OAASkuC,EAAWv2B,EAAQhgB,MAAMsa,KAAO0F,EAAQhgB,MAAM3C,KAE7EA,EAAuB,MAAhB65C,EAAsB5G,EAAW2G,EAAa3G,GAAY,IAAM2G,EAAaC,GAExF,MAAO,CACLjxC,MAAO+Z,EACPriB,QAASqiB,EAAQhgB,MAAMrC,QACvBN,KAAM2iB,EAAQhgB,MAAMoP,SAAW6nC,EAAa55C,GAAQ,KAAOA,KAK7Ds4C,EAAiB,SAAwBD,GAC3C,OAAQA,EAAMvxC,kBAAqC,IAAjBuxC,EAAMxxC,UAAkBwxC,EAAMtxC,SAAWsxC,EAAMrxC,QAAUqxC,EAAMpxC,SAAWoxC,EAAMnxC,Y,mBC3sBpHwC,EAAO9J,QAAU,syB,qBCAjB,IAAIukB,EAAmB,EAAQ,QAW/Bza,EAAO9J,QATP,SAAqCid,EAAGC,GACtC,GAAKD,EAAL,CACA,GAAiB,iBAANA,EAAgB,OAAOsH,EAAiBtH,EAAGC,GACtD,IAAIC,EAAI/S,OAAOjG,UAAUiZ,SAASna,KAAKga,GAAGnb,MAAM,GAAI,GAEpD,MADU,WAANqb,GAAkBF,EAAE3K,cAAa6K,EAAIF,EAAE3K,YAAYhH,MAC7C,QAAN6R,GAAqB,QAANA,EAAoB7F,MAAM+F,KAAKJ,GACxC,cAANE,GAAqB,2CAA2ChB,KAAKgB,GAAWoH,EAAiBtH,EAAGC,QAAxG,K,kCCRa,SAASg9B,EAAkB11B,EAAK9S,IAClC,MAAPA,GAAeA,EAAM8S,EAAIjZ,UAAQmG,EAAM8S,EAAIjZ,QAE/C,IAAK,IAAI0B,EAAI,EAAG0nC,EAAO,IAAIr9B,MAAM5F,GAAMzE,EAAIyE,EAAKzE,IAC9C0nC,EAAK1nC,GAAKuX,EAAIvX,GAGhB,OAAO0nC,EAPT,mC,qBCAA7qC,EAAO9J,QAAU,82C,mBCajB8J,EAAO9J,QAbP,WACE,GAAuB,oBAAZm6C,UAA4BA,QAAQC,UAAW,OAAO,EACjE,GAAID,QAAQC,UAAUC,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADA3/B,KAAKxW,UAAUiZ,SAASna,KAAKk3C,QAAQC,UAAUz/B,KAAM,IAAI,iBAClD,EACP,MAAO5T,GACP,OAAO,K,kCCPX,IAAI6I,EAAWxF,OAAOyF,QAAU,SAAUjK,GAAU,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CAAE,IAAI6C,EAASpE,UAAUuB,GAAI,IAAK,IAAIpE,KAAOiH,EAAc1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAAQjD,EAAOiD,GAAOiH,EAAOjH,IAAY,OAAOjD,GAEvP5F,EAAQgxC,cAAgB,SAAUxvC,GAChC,IAAIkD,EAAWlD,EAAKkD,SAEhB61C,EAAa12C,OAAO22C,kCACpBC,EAAY52C,OAAO62C,+BAAgC,EAEvD,GAAKH,GAAqC,mBAAhB12C,OAAO82C,KAAjC,CAIA,IAAIC,EAAc,GAEdl2C,IACFk2C,EAAc,GAAKl2C,EAASC,SAAWD,EAAS2U,OAAS3U,EAAS4U,MAGpE,IAAIuhC,EAAe,GACfJ,IACFI,EAAe,CAAEC,cAAc,IAGjCj3C,OAAO82C,KAAK,SAAUJ,EAAY3qC,EAAS,CACzCmrC,UAAWH,GACVC,O,kCCzBL,IAAIx6B,EAAU/I,MAAM+I,QAChB26B,EAAU5wC,OAAOyC,KACjBouC,EAAU7wC,OAAOjG,UAAUqB,eAC3B01C,EAAoC,oBAAZC,QAsE5BrxC,EAAO9J,QAAU,SAAuB0nB,EAAGC,GACzC,IACE,OAtEJ,SAASyzB,EAAM1zB,EAAGC,GAEhB,GAAID,IAAMC,EAAG,OAAO,EAEpB,GAAID,GAAKC,GAAiB,iBAALD,GAA6B,iBAALC,EAAe,CAC1D,IAEI1a,EACA1B,EACA1C,EAJAwyC,EAAOh7B,EAAQqH,GACf4zB,EAAOj7B,EAAQsH,GAKnB,GAAI0zB,GAAQC,EAAM,CAEhB,IADA/vC,EAASmc,EAAEnc,SACGoc,EAAEpc,OAAQ,OAAO,EAE/B,IAAK0B,EAAI1B,EAAgB,GAAR0B,KACf,IAAKmuC,EAAM1zB,EAAEza,GAAI0a,EAAE1a,IAAK,OAAO,EAGjC,OAAO,EAGT,GAAIouC,GAAQC,EAAM,OAAO,EACzB,IAAIC,EAAQ7zB,aAAa/M,KACrB6gC,EAAQ7zB,aAAahN,KACzB,GAAI4gC,GAASC,EAAO,OAAO,EAC3B,GAAID,GAASC,EAAO,OAAO9zB,EAAE+zB,WAAa9zB,EAAE8zB,UAC5C,IAAIC,EAAUh0B,aAAagX,OACvBid,EAAUh0B,aAAa+W,OAC3B,GAAIgd,GAAWC,EAAS,OAAO,EAC/B,GAAID,GAAWC,EAAS,OAAOj0B,EAAEtK,YAAcuK,EAAEvK,WACjD,IAAIvQ,EAAOmuC,EAAQtzB,GAEnB,IADAnc,EAASsB,EAAKtB,UACCyvC,EAAQrzB,GAAGpc,OAAQ,OAAO,EAEzC,IAAK0B,EAAI1B,EAAgB,GAAR0B,KACf,IAAKguC,EAAQh4C,KAAK0kB,EAAG9a,EAAKI,IAAK,OAAO,EAMxC,GAAIiuC,GAAkBxzB,aAAayzB,SAAWxzB,aAAawzB,QAAS,OAAOzzB,IAAMC,EAEjF,IAAK1a,EAAI1B,EAAgB,GAAR0B,KAGf,KAAY,YAFZpE,EAAMgE,EAAKI,KAEaya,EAAEk0B,UAQnBR,EAAM1zB,EAAE7e,GAAM8e,EAAE9e,KAAO,OAAO,EAMvC,OAAO,EAGT,OAAO6e,GAAMA,GAAKC,GAAMA,EAMfyzB,CAAM1zB,EAAGC,GAChB,MAAOpJ,GACP,GAAIA,EAAMs9B,SAAWt9B,EAAMs9B,QAAQj3B,MAAM,sBAAyC,aAAlBrG,EAAMu9B,OAOpE,OADA1zC,QAAQC,KAAK,mEAAoEkW,EAAMjT,KAAMiT,EAAMs9B,UAC5F,EAIT,MAAMt9B,K,mBC1FV,SAAS7U,EAAQK,GAaf,MAVsB,mBAAXuT,QAAoD,iBAApBA,OAAOC,SAChDzT,EAAO9J,QAAU0J,EAAU,SAAiBK,GAC1C,cAAcA,GAGhBD,EAAO9J,QAAU0J,EAAU,SAAiBK,GAC1C,OAAOA,GAAyB,mBAAXuT,QAAyBvT,EAAIuI,cAAgBgL,QAAUvT,IAAQuT,OAAOnZ,UAAY,gBAAkB4F,GAItHL,EAAQK,GAGjBD,EAAO9J,QAAU0J,G,kCCXF,SAASiE,EAAY6d,EAAKjqB,GACvC,YADoD,IAAbA,MAAa,IAC/CA,EAIDiqB,IAAQjqB,EACJ,IAGJiqB,EAAIlqB,WAAcC,EAAlB,KACKiqB,EAAI1pB,MAAMP,EAAOgK,QAGnBigB,EAXEA,EAPX,mC,kCCEAxrB,EAAQC,YAAa,EACrBD,EAAQoB,UAER,SAAmBhB,GACjB,IAAIuE,EAAWvE,GAAQ,IACnBiZ,EAAS,GACTC,EAAO,GACPyiC,EAAYp3C,EAAS2M,QAAQ,MAEd,IAAfyqC,IACFziC,EAAO3U,EAAS2W,OAAOygC,GACvBp3C,EAAWA,EAAS2W,OAAO,EAAGygC,IAGhC,IAAI3gC,EAAczW,EAAS2M,QAAQ,MAEd,IAAjB8J,IACF/B,EAAS1U,EAAS2W,OAAOF,GACzBzW,EAAWA,EAAS2W,OAAO,EAAGF,IAGhC,MAAO,CACLzW,SAAUA,EACV0U,OAAmB,MAAXA,EAAiB,GAAKA,EAC9BC,KAAe,MAATA,EAAe,GAAKA,K,kCC1Bf,SAAS0iC,EAAexjC,EAAUC,GAC/CD,EAASrU,UAAYiG,OAAOsG,OAAO+H,EAAWtU,WAC9CqU,EAASrU,UAAUmO,YAAckG,EACjCA,EAASnG,UAAYoG,EAHvB,mC,uWCyDMwjC,EAzDU,SAAUC,GACxB,GAAI,oBAAOpkC,SACT,OAAO,EAET,IAAMqkC,EAAWrkC,SAASpR,cAAT,QACjB,IACE,GAAIy1C,EAASC,SAAW,mBAAOD,EAASC,QAAQC,SAC9C,OAAOF,EAASC,QAAQC,SAASH,GAEnC,MAAOx9B,GACP,OAAO,EAET,OAAO,EA6CyB49B,CAAQ,YA1Cb,SAAUruB,EAAKzlB,GAC1C,OAAO,IAAIwS,SAAQ,SAAC5Y,EAASqf,GAC3B,GAAI,oBAAO3J,SAAX,CAKA,IAAMyX,EAAOzX,SAASpR,cAAT,QACb6oB,EAAKgtB,aAAL,kBACAhtB,EAAKgtB,aAAL,OAA0BtuB,GAE1B7jB,OAAOyC,KAAKrE,GAAS9C,SAAQ,SAAAmD,GAC3B0mB,EAAKgtB,aAAa1zC,EAAKL,EAAQK,OAGjC0mB,EAAKitB,OAASp6C,EACdmtB,EAAKktB,QAAUh7B,GAGb3J,SAAS4kC,qBAAT,QAAsC,IACtC5kC,SAAS6kC,kBAAT,UAAqC,GAAG/M,YAC5BC,YAAYtgB,QAlBxB9N,QAsBsB,SAAUwM,GACpC,OAAO,IAAIjT,SAAQ,SAAC5Y,EAASqf,GAC3B,IAAMm7B,EAAM,IAAIC,eAChBD,EAAIE,KAAJ,MAAgB7uB,GAAK,GAErB2uB,EAAIJ,OAAS,WACQ,MAAfI,EAAIzL,OACN/uC,IAEAqf,KAIJm7B,EAAIG,KAAK,UAQPC,EAAa,GAkBJC,EAhBE,SAAUhvB,EAAKzlB,GAC9B,OAAO,IAAIwS,SAAQ,SAAA5Y,GACb46C,EAAW/uB,GACb7rB,IAIF65C,EAA0BhuB,EAAKzlB,GAC5BgW,MAAK,WACJpc,IACA46C,EAAW/uB,IAAO,KAEnBxP,OAAM,mB,imBCpEN,IAAM2yB,EAAqB,CAIhCl5B,MAAM,QAINglC,QAAQ,WAGJC,EAAgB,SAAAvR,GAAC,OAAKA,GAAKA,EAAElrC,SAAYkrC,GAQzCwR,EAAoB,SAAAh9C,GACxB,IAP8BgiC,EAQ9B,qBADsB,MAAJhiC,EAAA,QALlBgiC,GADAA,EAAI,OAD0BA,EAOqChiC,GAN7D,GAAagiC,EAAEtgC,MAAM,GAAKsgC,GAC1BvgC,SAAF,KAAkBugC,EAAEtgC,MAAM,GAAI,GAAKsgC,GAMvC,mBAGF,SAASib,EAAQpvB,EAAKqvB,GACpB,YADoC,IAAhBA,MAAgB,OAC7B,IAAItiC,SAAQ,SAAC5Y,EAASqf,GAC3B,IAAMm7B,EAAM,IAAIC,eAChBD,EAAIE,KAAKQ,EAAQrvB,GAAK,GACtB2uB,EAAIW,mBAAqB,WACD,GAAlBX,EAAIvxB,YACNjpB,EAAQw6C,IAGZA,EAAIG,KAAK,SAIb,IAucI/3C,EAxbEw4C,EAAkB,SAACC,EAAUzxC,QAAqB,IAArBA,MAAY,MAC7C,IAAMsY,EAAO,CACXo5B,mBAAoBD,EAASC,mBAC7Bt9C,KAAMq9C,EAASr9C,KACfixC,uBAAwBoM,EAASpM,uBACjCjjC,UAAWqvC,EAASrvC,UACpBuvC,kBAAmBF,EAASE,mBAG9B,MAAO,CACL3xC,YACA+X,KAAM05B,EAAS5+B,OACfyF,SAISs5B,EAAb,WACE,WAAYC,EAAetwC,GAAa,KA0BxCuwC,wBAA0B,IAAIxwC,IAV5BpK,KAAK66C,OAAS,IAAIzwC,IAClBpK,KAAK86C,WAAa,IAAI1wC,IACtBpK,KAAK+6C,cAAgB,GACrB/6C,KAAKg7C,WAAa,IAAI5wC,IACtBpK,KAAKi7C,kBAAoB,IAAIC,IAC7Bl7C,KAAKm7C,kBAAoB,IAAID,IAC7Bl7C,KAAK26C,cAAgBA,EACrB/vC,YAAcP,GAxBlB,2BA6BE+wC,YAAA,SAAYrwB,GAAM,IAAD,OACXswB,EAAkBr7C,KAAK46C,wBAAwB7zC,IAAIgkB,GAQvD,OANKswB,IACHA,EAAkBlB,EAAQpvB,EAAD,OACzB/qB,KAAK46C,wBAAwBtzC,IAAIyjB,EAAKswB,IAIjCA,EACJ//B,MAAK,SAAAggC,GAEJ,OADA,EAAKV,wBAAwBW,OAAOxwB,GAC7BuwB,KAER//B,OAAM,SAAAC,GAEL,MADA,EAAKo/B,wBAAwBW,OAAOxwB,GAC9BvP,MA7Cd,EAiDEs0B,aAAA,SAAa5uB,GACXlhB,KAAKkhB,UAAYA,EACjBlhB,KAAKw7C,iBAAmBt6B,EAAU,0BAA0Bu6B,MAAK,SAAAj3B,GAAC,OAAIA,MAnD1E,EAsDEk3B,kBAAA,SAAkBC,GAAU,IAAD,OACjBlL,EAA0BkL,EAA1BlL,SADiB,EACSkL,EAAhBC,eADO,MACG,EADH,EAEnB7wB,EAAMmvB,EAAkBzJ,GAC9B,OAAOzwC,KAAKo7C,YAAYrwB,GAAKzP,MAAK,SAAAo+B,GAAQ,IAChCzL,EAAyByL,EAAzBzL,OAAQ4N,EAAiBnC,EAAjBmC,aAGhB,GAAe,MAAX5N,EACF,IACE,IAAM6N,EAAc71C,KAAKC,MAAM21C,GAC/B,QAAyB5xC,IAArB6xC,EAAY5+C,KACd,MAAM,IAAI8X,MAAJ,iCAGR,OAAO9N,OAAOyF,OAAOgvC,EAAS,CAC5B1N,OAAQC,EAAmB8L,QAC3B+B,QAASD,IAEX,MAAOtgC,IAMX,OAAe,MAAXyyB,GAA6B,MAAXA,EAER,cAARwC,EACKvpC,OAAOyF,OAAOgvC,EAAS,CAC5B1N,OAAQC,EAAmBl5B,QAMxB,EAAK0mC,kBACVx0C,OAAOyF,OAAOgvC,EAAS,CAAElL,SAAS,YAAcuL,UAAU,KAK/C,MAAX/N,EACK/mC,OAAOyF,OAAOgvC,EAAS,CAC5B1N,OAAQC,EAAmBl5B,QAK3B4mC,EAAU,EACL,EAAKF,kBACVx0C,OAAOyF,OAAOgvC,EAAS,CAAEC,QAASA,EAAU,KAKzC10C,OAAOyF,OAAOgvC,EAAS,CAC5B1N,OAAQC,EAAmBl5B,YA7GnC,EAkHEinC,iBAAA,SAAiBxM,GAAU,IAAD,OAClBgB,EAAWhlC,YAASgkC,GAC1B,GAAIzvC,KAAKg7C,WAAWl0C,IAAI2pC,GAAW,CACjC,IAAM8J,EAAWv6C,KAAKg7C,WAAWj0C,IAAI0pC,GAEnC,OAAO34B,QAAQ5Y,QAAQq7C,GAI3B,OAAOv6C,KAAK07C,kBAAkB,CAAEjL,aAAYn1B,MAAK,SAAAi/B,GAG/C,OAFA,EAAKS,WAAW1zC,IAAImpC,EAAU8J,GAEvBA,MA9Hb,EAkIE1vC,cAAA,SAAc4kC,GACZ,OAAO5kC,YAAc4kC,IAnIzB,EAuIEzB,SAAA,SAASyB,GAAU,IAAD,OACVgB,EAAWhlC,YAASgkC,GAC1B,GAAIzvC,KAAK66C,OAAO/zC,IAAI2pC,GAAW,CAC7B,IAAMrvB,EAAOphB,KAAK66C,OAAO9zC,IAAI0pC,GAE3B,OAAO34B,QAAQ5Y,QAAQkiB,EAAK26B,SAIhC,GAAI/7C,KAAK86C,WAAWh0C,IAAI2pC,GACtB,OAAOzwC,KAAK86C,WAAW/zC,IAAI0pC,GAG7B,IAAM4K,EAAkBvjC,QAAQxG,IAAI,CAClCtR,KAAKk8C,cACLl8C,KAAKi8C,iBAAiBxL,KACrBn1B,MAAK,SAAA6gC,GACN,IAAMxgC,EAASwgC,EAAQ,GACvB,GAAIxgC,EAAOsyB,SAAWC,EAAmBl5B,MACvC,MAAO,CACLi5B,OAAQC,EAAmBl5B,OAI/B,IAAIulC,EAAW5+B,EAAOogC,QARL,EASsCxB,EAA/CC,EATS,EASTA,mBATS,IASWC,yBATX,MAS+B,GAT/B,EAWX2B,EAAc,GAEdC,EAAwB,EAAK1B,cAAcH,GAAoBl/B,MACnE,SAAAxS,GAEE,IAAI8X,EAgBJ,OAjBAw7B,EAAYE,UAAY,IAAI7kC,KAEvB3O,GAGHszC,EAAYnO,OAASC,EAAmB8L,SAChB,IAApBr+B,EAAOqgC,WACTI,EAAYJ,UAAW,GAEzBzB,EAAWrzC,OAAOyF,OAAO4tC,EAAU,CACjCpM,uBAAwBgO,EAAQ,GAC5BA,EAAQ,GAAGhO,uBADS,KAI1BvtB,EAAgB05B,EAAgBC,EAAUzxC,IAX1CszC,EAAYnO,OAASC,EAAmBl5B,MAcnC4L,KAIL27B,EAA0BzkC,QAAQxG,IACtCmpC,EAAkBxvC,KAAI,SAAAuxC,GAEpB,GAAI,EAAKzB,cAAcyB,GAAkB,CACvC,IAAMV,EAAc,EAAKf,cAAcyB,GACvC,MAAO,CAAEA,kBAAiBV,eAG5B,OAAO,EAAKV,YAAL,mBACgCoB,EADhC,SAELlhC,MAAK,SAAAo+B,GACL,IAAMoC,EAAc71C,KAAKC,MAAMwzC,EAAImC,cACnC,MAAO,CAAEW,kBAAiBV,sBAG9BxgC,MAAK,SAAAg1B,GACL,IAAMmM,EAAwB,GAO9B,OALAnM,EAAmB9tC,SAAQ,YAAuC,IAApCg6C,EAAmC,EAAnCA,gBAAiBV,EAAkB,EAAlBA,YAC7CW,EAAsBD,GAAmBV,EACzC,EAAKf,cAAcyB,GAAmBV,KAGjCW,KAGT,OAAO3kC,QAAQxG,IAAI,CAAC+qC,EAAuBE,IAA0BjhC,MACnE,YAA0C,IACpCygC,EADJn7B,EAAuC,KAAxB0vB,EAAwB,KAavC,OAXI1vB,IACFm7B,EAAO,OAAQn7B,GAAR,IAAuB0vB,uBAC9B8L,EAAYL,QAAUA,EACtB1qC,IAAQM,KAAR,0BAAwC,CACtCyP,KAAM26B,EACNn7B,cAAem7B,KAInB,EAAKlB,OAAOvzC,IAAImpC,EAAU2L,GAEnBL,QAgBb,OAXAV,EACG//B,MAAK,SAAAggC,GACJ,EAAKR,WAAWS,OAAO9K,MAExBl1B,OAAM,SAAAF,GAEL,MADA,EAAKy/B,WAAWS,OAAO9K,GACjBp1B,KAGVrb,KAAK86C,WAAWxzC,IAAImpC,EAAU4K,GAEvBA,GAnPX,EAuPE9L,aAAA,SAAaE,GACX,IAAMgB,EAAWhlC,YAASgkC,GAC1B,GAAIzvC,KAAK66C,OAAO/zC,IAAI2pC,GAElB,OADiBzwC,KAAK66C,OAAO9zC,IAAI0pC,GAAUsL,SA1PjD,EAgQEW,eAAA,SAAejM,GAEb,QAjSkC,WACpC,GACE,eAAgB7oB,gBAChB,IAAOA,UAAU+0B,WACjB,CACA,IAAK/0B,UAAU+0B,WAAWC,eAArB,IAA0C9uC,SAA1C,MACH,OAAO,EAET,GAAI8Z,UAAU+0B,WAAWE,SACvB,OAAO,EAGX,OAAO,EAqRAC,KAKD98C,KAAK66C,OAAO/zC,IAAI2pC,IAvQxB,EA8QEsJ,SAAA,SAAStJ,GAAW,IAAD,OACjB,IAAKzwC,KAAK08C,eAAejM,GACvB,OAAO,EAWT,GANKzwC,KAAKi7C,kBAAkBn0C,IAAI2pC,KAC9BzwC,KAAKkhB,UAAL,qBAAqC,CAAEzf,SAAUgvC,IACjDzwC,KAAKi7C,kBAAkB7tC,IAAIqjC,IAIzBzwC,KAAKw7C,iBACP,OAAO,EAGT,IAAMuB,EAAWtxC,YAASglC,GAU1B,OAPAzwC,KAAKg9C,WAAWD,GAAUzhC,MAAK,WACxB,EAAK6/B,kBAAkBr0C,IAAI2pC,KAC9B,EAAKvvB,UAAL,yBAAyC,CAAEzf,SAAUgvC,IACrD,EAAK0K,kBAAkB/tC,IAAIqjC,QAIxB,GAzSX,EA4SEuM,WAAA,SAAWvM,GAAW,IAAD,OACbwM,EAAc/C,EAAkBzJ,GACtC,OAAOyM,EAAeD,EAAa,CACjCE,YAAY,YACZC,GAAG,UACF9hC,MAAK,kBAGN,EAAK2gC,iBAAiBxL,OApT5B,EAwTE3sC,SAAA,SAAS2rC,GACPzvC,KAAKguC,SAASyB,IAzTlB,EA4TE4N,2BAAA,SAA2B5N,GACzB,IAAMgB,EAAWhlC,YAASgkC,GACpBruB,EAAOphB,KAAKg7C,WAAWj0C,IAAI0pC,GACjC,GAAIrvB,EAAM,CACR,IAAMR,EAAgB05B,EAAgBl5B,EAAK26B,SAE3C,MAAM,GAAN,mBACKuB,EAAoB18B,EAAcQ,KAAKo5B,qBAD5C,CAEEN,EAAkBzJ,KAGpB,OAAO,MAvUb,EA2UE8M,eAAA,SAAe9N,GACb,IAAMgB,EAAWhlC,YAASgkC,GACpBruB,EAAOphB,KAAK66C,OAAO9zC,IAAI0pC,GAC7B,OAAQrvB,GAAQA,EAAK46B,UA9UzB,EAiVEE,YAAA,SAAYN,GAAc,IAAD,OACvB,YADuB,IAAbA,MAAU,GACb57C,KAAKo7C,YAAL,4BAA+D9/B,MACpE,SAAAo+B,GAAQ,IAGF8D,EAFIvP,EAAyByL,EAAzBzL,OAAQ4N,EAAiBnC,EAAjBmC,aAIhB,GAAe,MAAX5N,GAAkB2N,EAAU,EAE9B,OAAO,EAAKM,YAAYN,EAAU,GAIpC,GAAe,MAAX3N,EACF,IACE,IAAM6N,EAAc71C,KAAKC,MAAM21C,GAC/B,QAA2C5xC,IAAvC6xC,EAAY3N,uBACd,MAAM,IAAIn5B,MAAJ,iCAGRwoC,EAAU1B,EACV,MAAOtgC,IAKX,OAAOgiC,MA3Wf,KAiXMF,EAAsB,SAAA9C,GAAkB,OAC3C75C,OAAO88C,gBAAgBjD,IAAuB,IAAIvvC,KACjD,SAAAyyC,GAAK,MAAI7+C,GAAkB6+C,MAGlB/N,EAAb,YACE,WAAYC,EAAevlC,GAAY,OASrC,aARsB,SAAAszC,GAAS,OAC7B/N,EAAcx8B,WAAWuqC,GACrB/N,EAAcx8B,WAAWuqC,KACtBriC,KAAK2+B,GAEL1+B,OAAM,kBAAM,QACfzD,QAAQ5Y,YAEOmL,IATgB,KADzC,4CAaE2yC,WAAA,SAAWvM,GACT,OAAO,YAAMuM,WAAN,UAAiBvM,GAAUn1B,MAAK,SAAAK,GACrC,GAAIA,EAAOsyB,SAAWC,EAAmB8L,QACvC,OAAOliC,QAAQ5Y,UAEjB,IAAMq7C,EAAW5+B,EAAOogC,QAClB4B,EAAYpD,EAASC,mBACrBoD,EAAgBN,EAAoBK,GAC1C,OAAO7lC,QAAQxG,IAAIssC,EAAc3yC,IAAIiyC,IAAiB5hC,MAAK,kBAAMi/B,SArBvE,EAyBE0B,iBAAA,SAAiBxM,GACf,OAAO,YAAMwM,iBAAN,UAAuBxM,GAASn0B,MAAK,SAAA8X,GAC1C,OAAIA,EAAK4oB,SAGA7B,EAAQ1K,EAAD,QAAkBn0B,MAAK,SAAAo+B,GACnC,OAAmB,MAAfA,EAAIzL,OAIC,CACLA,OAAQC,EAAmBl5B,OAMxBoe,KAGJA,MA7Cb,GAAgCsnB,GAoDnB7K,EAAY,SAAAgO,GACvB/7C,EAAW+7C,GAGA18B,EAAe,CAI1B28B,wBAAyB,SAAArO,GAIvB,OAHAvqC,QAAQC,KAAR,wEAGOrD,EAASiI,EAAEikC,SAASyB,IAE7BsO,4BAA6B,SAAAtO,GAI3B,OAHAvqC,QAAQC,KAAR,gFAGOrD,EAASiI,EAAEwlC,aAAaE,IAEjCluC,QAAS,SAAAkuC,GAAO,OAAI3tC,EAASi4C,SAAStK,IAGtC4N,2BAA4B,SAAA5N,GAAO,OACjC3tC,EAASu7C,2BAA2B5N,IACtCzB,SAAU,SAAAyB,GAAO,OAAI3tC,EAASksC,SAASyB,IACvCF,aAAc,SAAAE,GAAO,OAAI3tC,EAASytC,aAAaE,IAC/CsK,SAAU,SAAAtK,GAAO,OAAI3tC,EAASi4C,SAAStK,IACvC8N,eAAgB,SAAA9N,GAAO,OAAI3tC,EAASy7C,eAAe9N,IACnD3rC,SAAU,SAAA2rC,GAAO,OAAI3tC,EAASgC,SAAS2rC,IACvCyM,YAAa,kBAAMp6C,EAASo6C,gBAGf/6B,YAER,SAASovB,IACd,OAAIzuC,EACKA,EAASi5C,cAET,K,2JC5hBPiD,EAAUnhD,UAAd,QACQqK,mBAD4K,G,qlBC4BpL,IAAM+2C,EAAN,GAQAC,mBAAmB,YAAkC,IAAD,IAA9BC,cAA8B,MAArB,GAAqB,EAAjB/qC,EAAiB,EAAjBA,WACjClM,2BAAmC,YAAiC,IAA/Bk3C,EAA8B,KAAf15C,EAAe,KAC7Du5C,EAAJ,GACEA,OAAyB,CAAEI,MAAOF,EAAT,GAAgCz5C,cAEzDu5C,KAAqC,CACnC,CAAEI,MAAOF,EAAT,GAAgCz5C,oBAMxC,IAAM0O,EAAalM,OAAA,gBACZ,YAAkB,IAAD,EAAfkB,EAAe,KAATkZ,EAAS,KACpB,OAAO,EAAP,OApBwB,SAAAA,GAAG,OAC7B,YAA0C,IAChC5c,EAAc4c,EAAA,MAAS,gBAAG+8B,EAAH,eAAgBA,GAAQA,EAAH,MADb,UAEvC,OAAO,cAAP,IAkBUC,CACNh9B,EAAA,OAAW,CAAE+8B,WAAF,EAAoB35C,UAAW0D,KAF9C,KAFe,QAQT,cACN,OAAO,EAAP,aATJ,IAaMm2C,EAActrC,6BAClB,gBAAeurC,EAAf,aAAsCvvC,EAAtC,kBACE,gCAAkB2K,WAAY6kC,GAC5B,2BAAarrC,WAAU,cAF3B,OC7DWsrC,EDsEW,SAAC,GAAD,IAAG7+B,EAAH,iBAAiB,mBAAjB,K,kCExDT,IAfG,SAAqBjb,GAErC,IAAI+B,EAAQ,IAAID,QAChB,OAAO,SAAU0K,GACf,GAAIzK,EAAMG,IAAIsK,GAEZ,OAAOzK,EAAMI,IAAIqK,GAGnB,IAAIgP,EAAMxb,EAAKwM,GAEf,OADAzK,EAAMW,IAAI8J,EAAKgP,GACRA,K,kCCTXtjB,EAAQ6hD,gBAAkB9hD,EAAQ,S,mBCFlC+J,UAAiB,CAAC6zB,QAAS,K,qBCA3B39B,EAAQC,YAAa,EACCD,EAAQ8hD,gBAAkB,CAC9CvY,KAAM,iBACNE,KAAM,iBACNJ,MAAO,mBAHT,IAKIX,EAAY1oC,EAAQ0oC,UAAY,CAClCqZ,KAAM,OACNxY,KAAM,OACNyY,KAAM,OACNvY,KAAM,OACNW,KAAM,OACNC,KAAM,OACNzB,SAAU,WACVD,OAAQ,SACRE,MAAO,QACPQ,MAAO,SAiBL4Y,GAfkBjiD,EAAQkiD,gBAAkB93C,OAAOyC,KAAK67B,GAAWv6B,KAAI,SAAU7C,GACnF,OAAOo9B,EAAUp9B,MAEEtL,EAAQmiD,eAAiB,CAC5CC,QAAS,UACTC,SAAU,UACVC,KAAM,OACNC,UAAW,aACXC,WAAY,YACZC,UAAW,WACXC,KAAM,OACNC,SAAU,WACVC,IAAK,MACLC,IAAK,OAEa7iD,EAAQiiD,cAAgB,CAC1Ca,UAAW,YACXC,QAAS,UACTC,MAAO,YACPC,gBAAiB,kBACjBC,YAAa,cACb,aAAc,YACdC,SAAU,WACVC,SAAU,aAEOpjD,EAAQqjD,aAAe,CACxCC,cAAe,eACfC,MAAO,QACPC,0BAA2B,0BAC3BC,uBAAwB,sBACxBC,eAAgB,iBAEC1jD,EAAQ2jD,aAAev5C,OAAOyC,KAAKo1C,GAAerxC,QAAO,SAAU7G,EAAKlB,GAEzF,OADAkB,EAAIk4C,EAAcp5C,IAAQA,EACnBkB,IACN,IACqB/J,EAAQ4jD,kBAAoB,CAAClb,EAAUE,SAAUF,EAAUC,OAAQD,EAAUG,OAC9E7oC,EAAQ6jD,iBAAmB,qB,kCCrDlD,IAAIjiC,EAA0B,EAAQ,QAElC9hB,EAAyB,EAAQ,QAErCE,EAAQC,YAAa,EACrBD,EAAQgV,qBAAkB,EAE1B,IAAIpU,EAAYd,EAAuB,EAAQ,SAE3CgB,EAAkBhB,EAAuB,EAAQ,SAEjD4X,EAAQkK,EAAwB,EAAQ,SAExCkiC,EAAYhkD,EAAuB,EAAQ,SAE3CiB,EAAajB,EAAuB,EAAQ,SAE5C+T,EAAiB,EAAQ,QAEzB5S,EAAU,EAAQ,QAIlB4G,EAAY,CACdk8C,UAAWhjD,EAAWL,QAAQ8B,OAAOuF,WACrCqa,mBAAoBrhB,EAAWL,QAAQoH,KACvCqK,SAAUpR,EAAWL,QAAQqiB,QAAQhb,YAInCi8C,EAA6C,SAAUlhD,GAGzD,SAASkhD,EAA8BjhD,GAUrC,OAPQD,EAAiBG,KAAKC,KAAMH,IAAUG,MALhD,EAAIpC,EAAgBJ,SAASsjD,EAA+BlhD,GAe5D,IAAIoB,EAAS8/C,EAA8B7/C,UAuB3C,OArBAD,EAAOU,kBAAoB,WACzB,IAAIU,EAASpC,KAGTof,EAAOwhC,EAAUpjD,QAAQujD,YAAY/gD,MAErCgD,EAAchD,KAAKH,MACnB2B,EAAWwB,EAAYxB,SACvBq/C,EAAY79C,EAAY69C,UAC5B,GAAKzhC,EAAL,CACAA,EAAK/H,iBAAiB,UAAU,WAC9BjV,EAAOvC,MAAMod,QAAQ9W,KAAK3E,EAAUq/C,EAAWzhC,EAAKlO,cAEtD,IAAIH,EAAW/Q,KAAKH,MAAMod,QAAQvX,KAAKlE,EAAUq/C,GACjDzhC,EAAKpO,SAAS,EAAGD,GAAY,KAG/B/P,EAAO8B,OAAS,WACd,OAAO9C,KAAKH,MAAMoP,UAGb6xC,EAvCwC,CAwC/CtsC,EAAM9P,WAEJoN,EAAkB,SAAyBjS,GAC7C,OAAoB2U,EAAMhR,cAAczF,EAAQ0F,SAAU,MAAM,SAAUnF,GACxE,IAAIkD,EAAWlD,EAAKkD,SACpB,OAAoBgT,EAAMhR,cAAcmN,EAAeC,cAAcqc,SAAU,MAAM,SAAUhQ,GAC7F,OAAoBzI,EAAMhR,cAAcs9C,GAA+B,EAAIpjD,EAAUF,SAAS,GAAIqC,EAAO,CACvGod,QAASA,EACTzb,SAAUA,YAMlB1E,EAAQgV,gBAAkBA,EAC1BA,EAAgBnN,UAAYA,G,kCCrF5B,IAAI/H,EAAyBC,EAAQ,QAErCC,EAAQC,YAAa,EACrBD,EAAQU,QAyLR,SAAkBwQ,EAAMsL,EAAenX,GACrC,IAAI6+C,EAAeC,EAAyB9+C,EAAImX,GAEhD,OADAtL,EAAKqJ,iBAAiB,QAAS2pC,GACxB,WACL,OAAOhzC,EAAKsJ,oBAAoB,QAAS0pC,KA5L7ClkD,EAAQmkD,yBAA2BnkD,EAAQokD,qBAAuBpkD,EAAQqkD,sBAAwBrkD,EAAQskD,oBAAsBtkD,EAAQukD,0BAA4BvkD,EAAQwkD,gCAAkCxkD,EAAQykD,kBAAoBzkD,EAAQ0kD,8BAAgC1kD,EAAQ2kD,gBAAkB3kD,EAAQ4kD,6BAA0B,EAE9U,IAAIC,EAAsB/kD,EAAuBC,EAAQ,SAErDsc,EAAUtc,EAAQ,QAElB6kD,EAA0B,SAAiCnM,GAC7D,OAAwB,IAAjBA,EAAMxxC,QAAgBwxC,EAAMrxC,QAAUqxC,EAAMpxC,SAAWoxC,EAAMtxC,SAAWsxC,EAAMnxC,UAIvFtH,EAAQ4kD,wBAA0BA,EAElC,IAAID,EAAkB,SAAyBhgD,GAC7C,MAAuB,MAAhBA,EAAS,GAAaA,EAAW,IAAMA,GAGhD3E,EAAQ2kD,gBAAkBA,EAE1B,IAAID,EAAgC,SAAuCjM,GACzE,OAAOA,EAAMvxC,kBAGflH,EAAQ0kD,8BAAgCA,EAExC,IAAID,EAAoB,SAA2BniC,GACjD,KAAOA,EAAKstB,WAAYttB,EAAOA,EAAKstB,WAClC,GAAoC,MAAhCttB,EAAKwiC,SAAS74B,cAChB,OAAO3J,EAIX,OAAO,MAGTtiB,EAAQykD,kBAAoBA,EAE5B,IAAID,EAAkC,SAAyCO,GAC7E,OAEoC,IAAlCA,EAAOC,aAAa,WAUH,MAAjBD,EAAOn/C,QAKP,CAAC,QAAS,IAAIoL,SAAS+zC,EAAOn/C,SAIZ,YAAlBm/C,EAAOn/C,UAA0Bm/C,EAAOE,cAAcC,YAAYjmB,QAClE8lB,EAAOE,cAAcC,YAAYjmB,SAAW8lB,EAAOE,cAAcC,cAAkC,SAAlBH,EAAOn/C,UAAuBm/C,EAAOE,cAAcC,YAAYhV,KAChJ6U,EAAOE,cAAcC,YAAYhV,MAAQ6U,EAAOE,cAAcC,cAIlEllD,EAAQwkD,gCAAkCA,EAE1C,IAAID,EAA4B,SAAmCQ,GACjE,OAKsC,IAApCA,EAAOC,aAAa,cAKwB,IAA5CR,EAAgCO,IAKpC/kD,EAAQukD,0BAA4BA,EAEpC,IAAID,EAAsB,SAA6B/qC,EAAQ4rC,GAC7D,OAAO5rC,EAAOC,WAAa2rC,EAAY3rC,UAEvCD,EAAOE,OAAS0rC,EAAY1rC,MAG9BzZ,EAAQskD,oBAAsBA,EAE9B,IAAID,EAAwB,SAA+Bc,EAAaC,GAEtE,OAWiE,IAA/DA,EAAejpC,KAAKwoC,EAAgBQ,EAAYxgD,aAKS,IAAzDwgD,EAAYxgD,SAAS0U,OAjBM,kCAqB/BrZ,EAAQqkD,sBAAwBA,EAEhC,IAAID,EAAuB,SAA8B7qC,EAAQ4rC,GAC/D,MAA4B,KAArBA,EAAY7rC,OAKM,KAAzB6rC,EAAYxgD,UAEZwgD,EAAYxgD,WAAa4U,EAAO5U,WAGlC3E,EAAQokD,qBAAuBA,EAE/B,IAAID,EAA2B,SAAkCkB,EAAa7oC,GAC5E,OAAO,SAAUi8B,GACf,GAAI50C,OAAOmqB,mBAAoB,OAAO,EACtC,GAAI42B,EAAwBnM,GAAQ,OAAO,EAC3C,GAAIiM,EAA8BjM,GAAQ,OAAO,EACjD,IAAI6M,EAAgBb,EAAkBhM,EAAM7yC,QAC5C,GAAqB,MAAjB0/C,EAAuB,OAAO,EAClC,GAAIf,EAA0Be,GAAgB,OAAO,EAGrD,IAAIH,EAAcrtC,SAASpR,cAAc,KAGd,KAAvB4+C,EAAc39C,OAChBw9C,EAAYx9C,KAAO29C,EAAc39C,MAG/B,sBAAuB9D,QAAUyhD,EAAc39C,gBAAgB49C,oBACjEJ,EAAYx9C,KAAO29C,EAAc39C,KAAK69C,SASxC,IAAIjsC,EAASzB,SAASpR,cAAc,KAEpC,GADA6S,EAAO5R,KAAO9D,OAAOa,SAASiD,MACmB,IAA7C28C,EAAoB/qC,EAAQ4rC,GAAwB,OAAO,EAE/D,IAAIC,EAAiB,IAAI1mB,OAAO,KAAM,EAAImmB,EAAoBnkD,UAAS,EAAI2b,EAAQnc,YAAY,OAC/F,GAAImkD,EAAsBc,EAAaC,GAAiB,OAAO,EAC/D,GAAIhB,EAAqB7qC,EAAQ4rC,GAAc,OAAO,EAEtD,GAAI3oC,EAAcipC,gBACG,IAAI/mB,OAAOliB,EAAcipC,gBAE3BtpC,KAAKgpC,EAAYxgD,UAChC,OAAO,EAIX8zC,EAAMlxC,iBAGN,IAAIm+C,EAAsBf,EAAgBQ,EAAYxgD,UAAUpE,QAAQ6kD,EAAgB,KAExF,OADAC,EAAY,GAAKK,EAAsBP,EAAY9rC,OAAS8rC,EAAY7rC,OACjE,IAIXtZ,EAAQmkD,yBAA2BA,G,mBC7KnCr6C,EAAO9J,QAfP,SAAyB+J,EAAKlB,EAAKG,GAYjC,OAXIH,KAAOkB,EACTK,OAAOC,eAAeN,EAAKlB,EAAK,CAC9BG,MAAOA,EACPyG,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZ5F,EAAIlB,GAAOG,EAGNe,I,qBCZT,IAAsB6hC,EAKpB9hC,EAAO9J,SALa4rC,EAKW7rC,EAAQ,UALR6rC,EAAElrC,SAAYkrC,G,yBCsBvC11B,EAAkBnW,EAAQ,QAA1BmW,cAERpM,EAAO9J,QAAUkW,EACjBpM,EAAO9J,QAAQU,QAAUwV,G,mBCzBzB,IAAMkc,EAAS,CACbC,OAAQ,CACNC,WAAY,IACZ+J,QAAS,0BACTspB,aAAc,KACdjyB,eAAe,GAEjBmC,OAAQ,CACNiB,KAAM,GACN8uB,SAAU,gCACV7zB,MACE,gEACF8zB,UAAW,GACXjvB,QAAS,GACTC,UAAW,GAiBXnB,MAAO,CAAC,CAAEhF,KAAM,GAAInB,KAAM,KAC1BlW,OAAQ,CACNyc,SAAS,EACTE,UAAW,aACX8vB,aAAcC,aACdC,iBAAkBD,mCAClBE,gBAAiBF,GAAYG,oBAGjC3zB,QAAS,CACPsB,eAAgB,CACd,cACA,aACA,aAEFM,aAAc,CACZ,eAEFuB,MAAO,CAAC,CAAEhF,KAAM,SAAUnB,KAAM,6BACxB,CAAEmB,KAAM,iBAAkBnB,KAAM,+KAExC42B,WAAW,EACXnzB,aAAa,EACbjB,MACE,IAEJ2E,aAAc,CACZ3E,MAAO,oBACPq0B,YAAa,kDACbC,QAAS,KACTtqB,aAAc,GACduqB,QAAS,oEAEXC,IAAK,CACHzwB,SAAS,EACT0wB,SAAU,CACRl7C,KAAM,oBACNm7C,WAAY,aACZC,UAAW,IACXC,iBAAkB,UAClBC,YAAa,UACb70C,QAAS,aACTsuC,YAAa,kBACbwG,MAAO,CACL,CACE5vB,IAAK,kBACL6vB,MAAM,UACN17C,KAAK,iBAOftB,EAAO9J,QAAUoyB,G,kCCnFjB,IAAI20B,EAAmB,sBAEvBj9C,EAAO9J,QAAU,SAAUwrB,GACzB,GAAmB,iBAARA,EACT,MAAM,IAAIzO,UAAU,qBAGtB,OAAOyO,EAAIjrB,QAAQwmD,EAAkB,U,mBCTvC,SAASn3C,IAeP,OAdA9F,EAAO9J,QAAU4P,EAAWxF,OAAOyF,QAAU,SAAUjK,GACrD,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAASpE,UAAUuB,GAEvB,IAAK,IAAIpE,KAAOiH,EACV1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAC/CjD,EAAOiD,GAAOiH,EAAOjH,IAK3B,OAAOjD,GAGFgK,EAASG,MAAM7M,KAAMwI,WAG9B5B,EAAO9J,QAAU4P,G,wRCbb,EAAiBxF,OAAOjG,UAAUqB,eAClCwhD,EAAmC,wBAMhB,oBAAhBC,YAA8B,cAAgB,MACjDC,EAA4B,wBAAc,IAG1C,GAFgBF,EAAoBvwC,SAEjB,SAA0B3O,GAC/C,IAAI9B,EAAS,SAAgBjD,EAAOqC,GAClC,OAAoB,wBAAc4hD,EAAoB72B,SAAU,MAAM,SAAUtmB,GAC9E,OAAO/B,EAAK/E,EAAO8G,EAAOzE,OAK9B,OAAoB,qBAAWY,KAQ7BmhD,EAAe,qCAGfC,EAAqB,SAA4Bh8C,EAAMrI,GAMzD,IAAIwU,EAAW,GAEf,IAAK,IAAI1O,KAAO9F,EACV,EAAeE,KAAKF,EAAO8F,KAC7B0O,EAAS1O,GAAO9F,EAAM8F,IAwB1B,OApBA0O,EAAS4vC,GAAgB/7C,EAoBlBmM,GAGL,EAAS,SAAgB1N,EAAO9G,EAAOwM,EAAOnK,GAChD,IAAIiiD,EAAoB,OAAV93C,EAAiBxM,EAAMi1B,IAAMj1B,EAAMi1B,IAAIzoB,GAI9B,iBAAZ83C,QAAsDl6C,IAA9BtD,EAAM2iB,WAAW66B,KAClDA,EAAUx9C,EAAM2iB,WAAW66B,IAG7B,IAAIj8C,EAAOrI,EAAMokD,GACblvB,EAAmB,CAACovB,GACpB9jD,EAAY,GAEe,iBAApBR,EAAMQ,UACfA,EAAY,YAAoBsG,EAAM2iB,WAAYyL,EAAkBl1B,EAAMQ,WAC9C,MAAnBR,EAAMQ,YACfA,EAAYR,EAAMQ,UAAY,KAGhC,IAAIo0B,EAAa,YAAgBM,GAUrB,YAAapuB,EAAO8tB,EAA4B,iBAATvsB,GACnD7H,GAAasG,EAAMhB,IAAM,IAAM8uB,EAAWrsB,KAC1C,IAAIiM,EAAW,GAEf,IAAK,IAAI1O,KAAO9F,EACV,EAAeE,KAAKF,EAAO8F,IAAgB,QAARA,GAAiBA,IAAQs+C,IAC9D5vC,EAAS1O,GAAO9F,EAAM8F,IAO1B,OAHA0O,EAASnS,IAAMA,EACfmS,EAAShU,UAAYA,EACE,wBAAc6H,EAAMmM,IAKzC+vC,EAAyB,GAAiB,SAAUvkD,EAAO8G,EAAOzE,GACpE,MAAyB,mBAAdrC,EAAMi1B,IACK,wBAAckvB,EAAa/2B,SAAU,MAAM,SAAU5gB,GACvE,OAAO,EAAO1F,EAAO9G,EAAOwM,EAAOnK,MAIhC,EAAOyE,EAAO9G,EAAO,KAAMqC,M,gBCnHrB,MARf,WACE,IAAK,IAAI0c,EAAOpW,UAAUH,OAAQkG,EAAO,IAAI6F,MAAMwK,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/EtQ,EAAKsQ,GAAQrW,UAAUqW,GAGzB,OAAO,YAAgBtQ,ICIrB,EAAM,SAAarG,EAAMrI,GAC3B,IAAI0O,EAAO/F,UAEX,GAAa,MAAT3I,IAAkB,EAAeE,KAAKF,EAAO,OAE/C,OAAO,gBAAcgN,WAAM5C,EAAWsE,GAGxC,IAAI2F,EAAa3F,EAAKlG,OAClB8L,EAAwB,IAAIC,MAAMF,GACtCC,EAAsB,GAAKiwC,EAC3BjwC,EAAsB,GAAK+vC,EAAmBh8C,EAAMrI,GAEpD,IAAK,IAAIkK,EAAI,EAAGA,EAAImK,EAAYnK,IAC9BoK,EAAsBpK,GAAKwE,EAAKxE,GAIlC,OAAO,gBAAc8C,MAAM,KAAMsH,IAI/BkwC,EAAwB,GAAiB,SAAUxkD,EAAO8G,GAU5D,IAAImF,EAASjM,EAAMiM,OAEnB,GAAsB,mBAAXA,EACT,OAAoB,wBAAck4C,EAAa/2B,SAAU,MAAM,SAAU5gB,GACvE,IAAIooB,EAAa,YAAgB,CAAC3oB,EAAOO,KACzC,OAAoB,wBAAc,EAAa,CAC7CooB,WAAYA,EACZ9tB,MAAOA,OAKb,IAAI8tB,EAAa,YAAgB,CAAC3oB,IAClC,OAAoB,wBAAc,EAAa,CAC7C2oB,WAAYA,EACZ9tB,MAAOA,OAMP,EAA2B,SAAU/G,GAGvC,SAAS0kD,EAAYzkD,EAAOod,EAASsnC,GACnC,OAAO3kD,EAAiBG,KAAKC,KAAMH,EAAOod,EAASsnC,IAAYvkD,KAHjE,YAAeskD,EAAa1kD,GAM5B,IAAIoB,EAASsjD,EAAYrjD,UAoDzB,OAlDAD,EAAOU,kBAAoB,WACzB1B,KAAK40B,MAAQ,IAAI,IAAW,CAC1BjvB,IAAK3F,KAAKH,MAAM8G,MAAMhB,IAAM,UAC5BmnC,MAAO9sC,KAAKH,MAAM8G,MAAMiuB,MAAMkY,MAC9BV,UAAWpsC,KAAKH,MAAM8G,MAAMiuB,MAAMwX,YAGpC,IAAIhtB,EAAOxK,SAAS4vC,cAAc,sBAAwBxkD,KAAKH,MAAM8G,MAAMhB,IAAM,KAAQ3F,KAAKH,MAAM40B,WAAWrsB,KAAO,MAEzG,OAATgX,GACFpf,KAAK40B,MAAM6vB,KAAKnnD,KAAK8hB,GAGnBpf,KAAKH,MAAM8G,MAAMiuB,MAAM6vB,KAAKp8C,SAC9BrI,KAAK40B,MAAMyF,OAASr6B,KAAKH,MAAM8G,MAAMiuB,MAAM6vB,KAAK,IAGlDzkD,KAAKs5B,gBAGPt4B,EAAOE,mBAAqB,SAA4BC,GAClDA,EAAUszB,WAAWrsB,OAASpI,KAAKH,MAAM40B,WAAWrsB,MACtDpI,KAAKs5B,gBAITt4B,EAAOs4B,aAAe,WAMpB,QALmCrvB,IAA/BjK,KAAKH,MAAM40B,WAAWtL,MAExB,YAAanpB,KAAKH,MAAM8G,MAAO3G,KAAKH,MAAM40B,WAAWtL,MAAM,GAGzDnpB,KAAK40B,MAAM6vB,KAAKp8C,OAAQ,CAE1B,IAAIwX,EAAU7f,KAAK40B,MAAM6vB,KAAKzkD,KAAK40B,MAAM6vB,KAAKp8C,OAAS,GAAGq8C,mBAC1D1kD,KAAK40B,MAAMyF,OAASxa,EACpB7f,KAAK40B,MAAMwB,QAGbp2B,KAAKH,MAAM8G,MAAMguB,OAAO,GAAI30B,KAAKH,MAAM40B,WAAYz0B,KAAK40B,OAAO,IAGjE5zB,EAAOW,qBAAuB,WAC5B3B,KAAK40B,MAAMwB,SAGbp1B,EAAO8B,OAAS,WACd,OAAO,MAGFwhD,EA3DsB,CA4D7B,aAgBErvB,EAAa,SAASA,EAAW1mB,GAKnC,IAJA,IAAIC,EAAMD,EAAKlG,OACX0B,EAAI,EACJmrB,EAAM,GAEHnrB,EAAIyE,EAAKzE,IAAK,CACnB,IAAIqH,EAAM7C,EAAKxE,GACf,GAAW,MAAPqH,EAAJ,CACA,IAAI+jB,OAAQ,EAEZ,cAAe/jB,GACb,IAAK,UACH,MAEF,IAAK,SAED,GAAIgD,MAAM+I,QAAQ/L,GAChB+jB,EAAQF,EAAW7jB,QAInB,IAAK,IAAIjD,KAFTgnB,EAAQ,GAEM/jB,EACRA,EAAIjD,IAAMA,IACZgnB,IAAUA,GAAS,KACnBA,GAAShnB,GAKf,MAGJ,QAEIgnB,EAAQ/jB,EAIV+jB,IACFD,IAAQA,GAAO,KACfA,GAAOC,IAIX,OAAOD,GAGT,SAASL,EAAMvL,EAAYwL,EAAKz0B,GAC9B,IAAI00B,EAAmB,GACnBC,EAAe,YAAoB1L,EAAYyL,EAAkB10B,GAErE,OAAI00B,EAAiB1sB,OAAS,EACrBhI,EAGF20B,EAAeF,EAAIC,GAGX,GAAiB,SAAUl1B,EAAOod,GACjD,OAAoB,wBAAc+mC,EAAa/2B,SAAU,MAAM,SAAU5gB,GACvE,IAEIyoB,EAAM,WAKR,IAAK,IAAIlW,EAAOpW,UAAUH,OAAQkG,EAAO,IAAI6F,MAAMwK,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/EtQ,EAAKsQ,GAAQrW,UAAUqW,GAGzB,IAAI4V,EAAa,YAAgBlmB,EAAM0O,EAAQqM,YAI/C,OAFE,YAAarM,EAASwX,GAAY,GAE7BxX,EAAQtX,IAAM,IAAM8uB,EAAWrsB,MAepC6E,EAAU,CACZ6nB,IAAKA,EACLU,GAdO,WAKP,IAAK,IAAIO,EAAQvtB,UAAUH,OAAQkG,EAAO,IAAI6F,MAAM2hB,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IACpFznB,EAAKynB,GAASxtB,UAAUwtB,GAG1B,OAAOnB,EAAM5X,EAAQqM,WAAYwL,EAAKG,EAAW1mB,KAMjDlC,MAAOA,GAELu2B,EAAM/iC,EAAMoP,SAAShC,GAEzB,OADc,EACP21B,S,kCCnOX,IAAIne,EAAI,mBAAsBrK,QAAUA,OAAOuqC,IAC3CvnB,EAAI3Y,EAAIrK,OAAOuqC,IAAI,iBAAmB,MACtCn2B,EAAI/J,EAAIrK,OAAOuqC,IAAI,gBAAkB,MACrC9gD,EAAI4gB,EAAIrK,OAAOuqC,IAAI,kBAAoB,MACvCha,EAAIlmB,EAAIrK,OAAOuqC,IAAI,qBAAuB,MAC1C/a,EAAInlB,EAAIrK,OAAOuqC,IAAI,kBAAoB,MACvCp8B,EAAI9D,EAAIrK,OAAOuqC,IAAI,kBAAoB,MACvCx2C,EAAIsW,EAAIrK,OAAOuqC,IAAI,iBAAmB,MACtCziC,EAAIuC,EAAIrK,OAAOuqC,IAAI,oBAAsB,MACzCjc,EAAIjkB,EAAIrK,OAAOuqC,IAAI,yBAA2B,MAC9C1qC,EAAIwK,EAAIrK,OAAOuqC,IAAI,qBAAuB,MAC1Cp5B,EAAI9G,EAAIrK,OAAOuqC,IAAI,kBAAoB,MACvCjgC,EAAID,EAAIrK,OAAOuqC,IAAI,uBAAyB,MAC5Cna,EAAI/lB,EAAIrK,OAAOuqC,IAAI,cAAgB,MACnC1lB,EAAIxa,EAAIrK,OAAOuqC,IAAI,cAAgB,MACnC5qB,EAAItV,EAAIrK,OAAOuqC,IAAI,eAAiB,MACpC7b,EAAIrkB,EAAIrK,OAAOuqC,IAAI,qBAAuB,MAC1C1xB,EAAIxO,EAAIrK,OAAOuqC,IAAI,mBAAqB,MACxCva,EAAI3lB,EAAIrK,OAAOuqC,IAAI,eAAiB,MAExC,SAASza,EAAE1lB,GACT,GAAI,iBAAoBA,GAAK,OAASA,EAAG,CACvC,IAAI+lB,EAAI/lB,EAAEk0B,SAEV,OAAQnO,GACN,KAAKnN,EACH,OAAQ5Y,EAAIA,EAAEtc,MACZ,KAAKga,EACL,KAAKwmB,EACL,KAAK7kC,EACL,KAAK+lC,EACL,KAAKe,EACL,KAAKpf,EACH,OAAO/G,EAET,QACE,OAAQA,EAAIA,GAAKA,EAAEk0B,UACjB,KAAKvqC,EACL,KAAK8L,EACL,KAAKglB,EACL,KAAKuL,EACL,KAAKjiB,EACH,OAAO/D,EAET,QACE,OAAO+lB,GAKjB,KAAK/b,EACH,OAAO+b,IAKf,SAASV,EAAErlB,GACT,OAAO0lB,EAAE1lB,KAAOkkB,EAGlB5rC,EAAQ8nD,UAAY1iC,EACpBplB,EAAQ+nD,eAAiBnc,EACzB5rC,EAAQgoD,gBAAkB32C,EAC1BrR,EAAQioD,gBAAkBx8B,EAC1BzrB,EAAQm7C,QAAU7a,EAClBtgC,EAAQkM,WAAaiR,EACrBnd,EAAQ6W,SAAW9P,EACnB/G,EAAQkoD,KAAO/lB,EACfniC,EAAQmM,KAAOuhC,EACf1tC,EAAQmoD,OAASz2B,EACjB1xB,EAAQooD,SAAWtb,EACnB9sC,EAAQqoD,WAAaxa,EACrB7tC,EAAQsoD,SAAW75B,EAEnBzuB,EAAQuoD,YAAc,SAAU7gC,GAC9B,OAAOqlB,EAAErlB,IAAM0lB,EAAE1lB,KAAOtC,GAG1BplB,EAAQwoD,iBAAmBzb,EAE3B/sC,EAAQyoD,kBAAoB,SAAU/gC,GACpC,OAAO0lB,EAAE1lB,KAAOrW,GAGlBrR,EAAQ0oD,kBAAoB,SAAUhhC,GACpC,OAAO0lB,EAAE1lB,KAAO+D,GAGlBzrB,EAAQ2oD,UAAY,SAAUjhC,GAC5B,MAAO,iBAAoBA,GAAK,OAASA,GAAKA,EAAEk0B,WAAatb,GAG/DtgC,EAAQ4oD,aAAe,SAAUlhC,GAC/B,OAAO0lB,EAAE1lB,KAAOvK,GAGlBnd,EAAQ6oD,WAAa,SAAUnhC,GAC7B,OAAO0lB,EAAE1lB,KAAO3gB,GAGlB/G,EAAQ8oD,OAAS,SAAUphC,GACzB,OAAO0lB,EAAE1lB,KAAOya,GAGlBniC,EAAQiM,OAAS,SAAUyb,GACzB,OAAO0lB,EAAE1lB,KAAOgmB,GAGlB1tC,EAAQ+oD,SAAW,SAAUrhC,GAC3B,OAAO0lB,EAAE1lB,KAAOgK,GAGlB1xB,EAAQgpD,WAAa,SAAUthC,GAC7B,OAAO0lB,EAAE1lB,KAAOolB,GAGlB9sC,EAAQipD,aAAe,SAAUvhC,GAC/B,OAAO0lB,EAAE1lB,KAAOmmB,GAGlB7tC,EAAQkpD,WAAa,SAAUxhC,GAC7B,OAAO0lB,EAAE1lB,KAAO+G,GAGlBzuB,EAAQmpD,mBAAqB,SAAUzhC,GACrC,MAAO,iBAAoBA,GAAK,mBAAsBA,GAAKA,IAAM3gB,GAAK2gB,IAAMkkB,GAAKlkB,IAAMolB,GAAKplB,IAAMmmB,GAAKnmB,IAAM+G,GAAK/G,IAAME,GAAK,iBAAoBF,GAAK,OAASA,IAAMA,EAAEk0B,WAAazZ,GAAKza,EAAEk0B,WAAalO,GAAKhmB,EAAEk0B,WAAanwB,GAAK/D,EAAEk0B,WAAavqC,GAAKqW,EAAEk0B,WAAaz+B,GAAKuK,EAAEk0B,WAAa5P,GAAKtkB,EAAEk0B,WAAazlB,GAAKzO,EAAEk0B,WAAatO,GAAK5lB,EAAEk0B,WAAa3e,IAGtVj9B,EAAQopD,OAAShc,G,kCC1IF,SAAS59B,EAAgBzF,EAAKlB,EAAKG,GAYhD,OAXIH,KAAOkB,EACTK,OAAOC,eAAeN,EAAKlB,EAAK,CAC9BG,MAAOA,EACPyG,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZ5F,EAAIlB,GAAOG,EAGNe,EAZT,mC,oUCwBes/C,UAlBU,SAAC,GAAkB,IAAhB3kD,EAAe,EAAfA,SACpBof,EAAgB3F,UAAOs0B,aAAa/tC,EAASC,UACnD,OAAKmf,EAGEpM,IAAMhR,cAAc4iD,I,yWAApB,EACL5kD,WACAof,iBACGA,EAAcC,OALV,O,qBCTX,IAAIjG,EAAiB,EAAQ,QAEzByrC,EAA2B,EAAQ,QAEvC,SAASC,EAAWC,EAAQh4C,EAAMi4C,GAchC,OAbIH,IACFz/C,EAAO9J,QAAUwpD,EAAarP,QAAQC,UAEtCtwC,EAAO9J,QAAUwpD,EAAa,SAAoBC,EAAQh4C,EAAMi4C,GAC9D,IAAIhiC,EAAI,CAAC,MACTA,EAAElnB,KAAKuP,MAAM2X,EAAGjW,GAChB,IACIzM,EAAW,IADG2kD,SAAS1lD,KAAK8L,MAAM05C,EAAQ/hC,IAG9C,OADIgiC,GAAO5rC,EAAe9Y,EAAU0kD,EAAMvlD,WACnCa,GAIJwkD,EAAWz5C,MAAM,KAAMrE,WAGhC5B,EAAO9J,QAAUwpD,G,sBCrBjB,YAAAxpD,EAAA,cACAA,EAAQqI,KAAOrI,EAAQ+xC,sBAAwB/xC,EAAQ+X,mBAAqB/X,EAAQiY,iBAAmBjY,EAAQooC,wBAA0BpoC,EAAQmqC,uCAAoCh9B,EAErL,IAAIzD,EAA4B,mBAAX4T,QAAoD,iBAApBA,OAAOC,SAAwB,SAAUxT,GAC5F,cAAcA,GACZ,SAAUA,GACZ,OAAOA,GAAyB,mBAAXuT,QAAyBvT,EAAIuI,cAAgBgL,QAAUvT,IAAQuT,OAAOnZ,UAAY,gBAAkB4F,GAGvH6F,EAAWxF,OAAOyF,QAAU,SAAUjK,GACxC,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAASpE,UAAUuB,GAEvB,IAAK,IAAIpE,KAAOiH,EACV1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAC/CjD,EAAOiD,GAAOiH,EAAOjH,IAK3B,OAAOjD,GAKLiiC,EAAU/nC,EAFD,EAAQ,SAMjB8pD,EAAiB9pD,EAFD,EAAQ,SAIxBooC,EAAmB,EAAQ,QAE/B,SAASpoC,EAAuBiK,GAC9B,OAAOA,GAAOA,EAAI9J,WAAa8J,EAAM,CACnCrJ,QAASqJ,GAIb,IAoKM8/C,EApKFlf,EAA0B,SAAiCnf,GAC7D,IAAIqR,IAASnxB,UAAUH,OAAS,QAAsB4B,IAAjBzB,UAAU,KAAmBA,UAAU,GAE5E,OAAe,IAAXmxB,EACKitB,OAAOt+B,GAGTs+B,OAAOt+B,GAAKjrB,QAAQ,KAAM,SAASA,QAAQ,KAAM,QAAQA,QAAQ,KAAM,QAAQA,QAAQ,KAAM,UAAUA,QAAQ,KAAM,WAG1HwpD,EAAwB,SAA+BC,GACzD,IAAIC,EAAiBC,EAAqBF,EAAW9hB,EAAiBQ,UAAUW,OAC5E8gB,EAAoBD,EAAqBF,EAAW9hB,EAAiBmb,aAAaK,gBAEtF,GAAIyG,GAAqBF,EAEvB,OAAOE,EAAkB5pD,QAAQ,OAAO,WACtC,OAAO0pD,KAIX,IAAIG,EAAwBF,EAAqBF,EAAW9hB,EAAiBmb,aAAaC,eAC1F,OAAO2G,GAAkBG,QAAyBj9C,GAGhDk9C,EAAyB,SAAgCL,GAC3D,OAAOE,EAAqBF,EAAW9hB,EAAiBmb,aAAaI,yBAA2B,cAG9F6G,EAA6B,SAAoCC,EAASP,GAC5E,OAAOA,EAAUxmD,QAAO,SAAUT,GAChC,YAAiC,IAAnBA,EAAMwnD,MACnBp8C,KAAI,SAAUpL,GACf,OAAOA,EAAMwnD,MACZ35C,QAAO,SAAU45C,EAAUroD,GAC5B,OAAOyN,EAAS,GAAI46C,EAAUroD,KAC7B,KAGDsoD,EAA0B,SAAiCC,EAAmBV,GAChF,OAAOA,EAAUxmD,QAAO,SAAUT,GAChC,YAAyD,IAA3CA,EAAMmlC,EAAiBQ,UAAUqZ,SAC9C5zC,KAAI,SAAUpL,GACf,OAAOA,EAAMmlC,EAAiBQ,UAAUqZ,SACvCjuB,UAAUljB,QAAO,SAAU+5C,EAAkBzrB,GAC9C,IAAKyrB,EAAiBp/C,OAGpB,IAFA,IAAIsB,EAAOzC,OAAOyC,KAAKqyB,GAEdjyB,EAAI,EAAGA,EAAIJ,EAAKtB,OAAQ0B,IAAK,CACpC,IACI29C,EADe/9C,EAAKI,GACiBgf,cAEzC,IAA0D,IAAtDy+B,EAAkBp5C,QAAQs5C,IAAiC1rB,EAAI0rB,GACjE,OAAOD,EAAiB79C,OAAOoyB,GAKrC,OAAOyrB,IACN,KAGDE,EAAuB,SAA8BtrB,EAASmrB,EAAmBV,GAEnF,IAAIc,EAAmB,GACvB,OAAOd,EAAUxmD,QAAO,SAAUT,GAChC,QAAIuU,MAAM+I,QAAQtd,EAAMw8B,WAIM,IAAnBx8B,EAAMw8B,IACfl3B,EAAK,WAAak3B,EAAU,mDAAwD71B,EAAQ3G,EAAMw8B,IAAY,MAGzG,MACNpxB,KAAI,SAAUpL,GACf,OAAOA,EAAMw8B,MACZzL,UAAUljB,QAAO,SAAUm6C,EAAcC,GAC1C,IAAIC,EAAmB,GACvBD,EAAaxnD,QAAO,SAAU07B,GAI5B,IAHA,IAAIgsB,OAAsB,EACtBr+C,EAAOzC,OAAOyC,KAAKqyB,GAEdjyB,EAAI,EAAGA,EAAIJ,EAAKtB,OAAQ0B,IAAK,CACpC,IAAIk+C,EAAet+C,EAAKI,GACpB29C,EAAwBO,EAAal/B,eAEiB,IAAtDy+B,EAAkBp5C,QAAQs5C,IAAmCM,IAAwBhjB,EAAiBia,eAAeS,KAAkD,cAA3C1jB,EAAIgsB,GAAqBj/B,eAAoC2+B,IAA0B1iB,EAAiBia,eAAeS,KAAoD,eAA7C1jB,EAAI0rB,GAAuB3+B,gBACvRi/B,EAAsBN,IAIyB,IAA7CF,EAAkBp5C,QAAQ65C,IAAyBA,IAAiBjjB,EAAiBia,eAAeK,YAAc2I,IAAiBjjB,EAAiBia,eAAeE,UAAY8I,IAAiBjjB,EAAiBia,eAAeM,YAClOyI,EAAsBC,GAI1B,IAAKD,IAAwBhsB,EAAIgsB,GAC/B,OAAO,EAGT,IAAIliD,EAAQk2B,EAAIgsB,GAAqBj/B,cAUrC,OARK6+B,EAAiBI,KACpBJ,EAAiBI,GAAuB,IAGrCD,EAAiBC,KACpBD,EAAiBC,GAAuB,KAGrCJ,EAAiBI,GAAqBliD,KACzCiiD,EAAiBC,GAAqBliD,IAAS,GACxC,MAIR8qB,UAAUpuB,SAAQ,SAAUw5B,GAC7B,OAAO6rB,EAAavqD,KAAK0+B,MAK3B,IAFA,IAAIryB,EAAOzC,OAAOyC,KAAKo+C,GAEdh+C,EAAI,EAAGA,EAAIJ,EAAKtB,OAAQ0B,IAAK,CACpC,IAAIk+C,EAAet+C,EAAKI,GACpBm+C,GAAW,EAAIxB,EAAelpD,SAAS,GAAIoqD,EAAiBK,GAAeF,EAAiBE,IAChGL,EAAiBK,GAAgBC,EAGnC,OAAOL,IACN,IAAIj3B,WAGLo2B,EAAuB,SAA8BF,EAAWn+B,GAClE,IAAK,IAAI5e,EAAI+8C,EAAUz+C,OAAS,EAAG0B,GAAK,EAAGA,IAAK,CAC9C,IAAIlK,EAAQinD,EAAU/8C,GAEtB,GAAIlK,EAAMyC,eAAeqmB,GACvB,OAAO9oB,EAAM8oB,GAIjB,OAAO,MAqBLw/B,GACExB,EAAQlvC,KAAKC,MACV,SAAU8iB,GACf,IAAI4tB,EAAc3wC,KAAKC,MAEnB0wC,EAAczB,EAAQ,IACxBA,EAAQyB,EACR5tB,EAAS4tB,IAET7qC,YAAW,WACT4qC,EAAY3tB,KACX,KAKL6tB,EAAc,SAAqB17B,GACrC,OAAOhP,aAAagP,IAGlBkiB,EAA0C,oBAAXluC,OAAyBA,OAAOkuC,uBAAyBluC,OAAO2nD,6BAA+B3nD,OAAO4nD,0BAA4BJ,EAAc7sB,EAAOuT,uBAAyBsZ,EAC/MK,EAAyC,oBAAX7nD,OAAyBA,OAAO6nD,sBAAwB7nD,OAAO8nD,4BAA8B9nD,OAAO+nD,yBAA2BL,EAAc/sB,EAAOktB,sBAAwBH,EAE1MljD,EAAO,SAAcwjD,GACvB,OAAOzjD,SAAmC,mBAAjBA,QAAQC,MAAuBD,QAAQC,KAAKwjD,IAGnEC,EAAkB,KAmBlBC,EAAmB,SAA0BC,EAAU3mD,GACzD,IAAI6lC,EAAU8gB,EAAS9gB,QACnB1B,EAAiBwiB,EAASxiB,eAC1BE,EAAiBsiB,EAAStiB,eAC1ByB,EAAW6gB,EAAS7gB,SACpBC,EAAW4gB,EAAS5gB,SACpBC,EAAe2gB,EAAS3gB,aACxBP,EAAsBkhB,EAASlhB,oBAC/BQ,EAAa0gB,EAAS1gB,WACtBC,EAAYygB,EAASzgB,UACrBxZ,EAAQi6B,EAASj6B,MACjBuX,EAAkB0iB,EAAS1iB,gBAC/B2iB,EAAiB/jB,EAAiBQ,UAAUa,KAAMC,GAClDyiB,EAAiB/jB,EAAiBQ,UAAUe,KAAMC,GAClDwiB,EAAYn6B,EAAOuX,GACnB,IAAI6iB,EAAa,CACfjhB,QAASkhB,EAAWlkB,EAAiBQ,UAAUqZ,KAAM7W,GACrDC,SAAUihB,EAAWlkB,EAAiBQ,UAAU0B,KAAMe,GACtDC,SAAUghB,EAAWlkB,EAAiBQ,UAAU2B,KAAMe,GACtDC,aAAc+gB,EAAWlkB,EAAiBQ,UAAUE,SAAUyC,GAC9DC,WAAY8gB,EAAWlkB,EAAiBQ,UAAUC,OAAQ2C,GAC1DC,UAAW6gB,EAAWlkB,EAAiBQ,UAAUG,MAAO0C,IAEtD8gB,EAAY,GACZC,EAAc,GAClBliD,OAAOyC,KAAKs/C,GAAYzmD,SAAQ,SAAU6kD,GACxC,IAAIgC,EAAsBJ,EAAW5B,GACjCiC,EAAUD,EAAoBC,QAC9BC,EAAUF,EAAoBE,QAE9BD,EAAQjhD,SACV8gD,EAAU9B,GAAWiC,GAGnBC,EAAQlhD,SACV+gD,EAAY/B,GAAW4B,EAAW5B,GAASkC,YAG/CpnD,GAAMA,IACNylC,EAAoBkhB,EAAUK,EAAWC,IAGvCI,EAAe,SAAsBC,GACvC,OAAOr1C,MAAM+I,QAAQssC,GAAiBA,EAAcjpD,KAAK,IAAMipD,GAG7DT,EAAc,SAAqBn6B,EAAOqN,QACvB,IAAVrN,GAAyBja,SAASia,QAAUA,IACrDja,SAASia,MAAQ26B,EAAa36B,IAGhCk6B,EAAiB/jB,EAAiBQ,UAAUW,MAAOjK,IAGjD6sB,EAAmB,SAA0B1sB,EAASH,GACxD,IAAIwtB,EAAa90C,SAAS4kC,qBAAqBnd,GAAS,GAExD,GAAKqtB,EAAL,CASA,IALA,IAAIC,EAAwBD,EAAWjd,aAAazH,EAAiB2b,kBACjEiJ,EAAmBD,EAAwBA,EAAsBj/C,MAAM,KAAO,GAC9Em/C,EAAqB,GAAGjgD,OAAOggD,GAC/BE,EAAgB5iD,OAAOyC,KAAKuyB,GAEvBnyB,EAAI,EAAGA,EAAI+/C,EAAczhD,OAAQ0B,IAAK,CAC7C,IAAIggD,EAAYD,EAAc//C,GAC1BjE,EAAQo2B,EAAW6tB,IAAc,GAEjCL,EAAWjd,aAAasd,KAAejkD,GACzC4jD,EAAWrQ,aAAa0Q,EAAWjkD,IAGQ,IAAzC8jD,EAAiBx7C,QAAQ27C,IAC3BH,EAAiBtsD,KAAKysD,GAGxB,IAAIC,EAAcH,EAAmBz7C,QAAQ27C,IAExB,IAAjBC,GACFH,EAAmBn4C,OAAOs4C,EAAa,GAI3C,IAAK,IAAIpgC,EAAKigC,EAAmBxhD,OAAS,EAAGuhB,GAAM,EAAGA,IACpD8/B,EAAWO,gBAAgBJ,EAAmBjgC,IAG5CggC,EAAiBvhD,SAAWwhD,EAAmBxhD,OACjDqhD,EAAWO,gBAAgBjlB,EAAiB2b,kBACnC+I,EAAWjd,aAAazH,EAAiB2b,oBAAsBmJ,EAActpD,KAAK,MAC3FkpD,EAAWrQ,aAAarU,EAAiB2b,iBAAkBmJ,EAActpD,KAAK,QAI9E0oD,EAAa,SAAoBhhD,EAAMu8C,GACzC,IAAIyF,EAAct1C,SAASy3B,MAAQz3B,SAAS4vC,cAAcxf,EAAiBQ,UAAUsZ,MACjFqL,EAAWD,EAAY1d,iBAAiBtkC,EAAO,IAAM88B,EAAiB2b,iBAAmB,KACzF4I,EAAUn1C,MAAMnT,UAAUrC,MAAMmB,KAAKoqD,GACrCb,EAAU,GACVc,OAAgB,EA0CpB,OAxCI3F,GAAQA,EAAKp8C,QACfo8C,EAAKjiD,SAAQ,SAAUw5B,GACrB,IAAIquB,EAAaz1C,SAASpR,cAAc0E,GAExC,IAAK,IAAI6hD,KAAa/tB,EACpB,GAAIA,EAAI15B,eAAeynD,GACrB,GAAIA,IAAc/kB,EAAiBia,eAAeK,WAChD+K,EAAWxnB,UAAY7G,EAAI6G,eACtB,GAAIknB,IAAc/kB,EAAiBia,eAAeE,SACnDkL,EAAWC,WACbD,EAAWC,WAAW1kB,QAAU5J,EAAI4J,QAEpCykB,EAAW1d,YAAY/3B,SAAS21C,eAAevuB,EAAI4J,cAEhD,CACL,IAAI9/B,OAAkC,IAAnBk2B,EAAI+tB,GAA6B,GAAK/tB,EAAI+tB,GAC7DM,EAAWhR,aAAa0Q,EAAWjkD,GAKzCukD,EAAWhR,aAAarU,EAAiB2b,iBAAkB,QAEvD4I,EAAQ9N,MAAK,SAAU+O,EAAa10C,GAEtC,OADAs0C,EAAgBt0C,EACTu0C,EAAWI,YAAYD,MAE9BjB,EAAQ73C,OAAO04C,EAAe,GAE9Bd,EAAQhsD,KAAK+sD,MAKnBd,EAAQ/mD,SAAQ,SAAUw5B,GACxB,OAAOA,EAAI0Q,WAAWge,YAAY1uB,MAEpCstB,EAAQ9mD,SAAQ,SAAUw5B,GACxB,OAAOkuB,EAAYvd,YAAY3Q,MAE1B,CACLutB,QAASA,EACTD,QAASA,IAITqB,EAAoC,SAA2CzuB,GACjF,OAAOh1B,OAAOyC,KAAKuyB,GAAYxuB,QAAO,SAAU4a,EAAK3iB,GACnD,IAAIilD,OAAkC,IAApB1uB,EAAWv2B,GAAuBA,EAAM,KAAQu2B,EAAWv2B,GAAO,IAAO,GAAKA,EAChG,OAAO2iB,EAAMA,EAAM,IAAMsiC,EAAOA,IAC/B,KAuBDC,EAAuC,SAA8C3uB,GACvF,IAAI4uB,EAAYtiD,UAAUH,OAAS,QAAsB4B,IAAjBzB,UAAU,GAAmBA,UAAU,GAAK,GACpF,OAAOtB,OAAOyC,KAAKuyB,GAAYxuB,QAAO,SAAU7G,EAAKlB,GAEnD,OADAkB,EAAIm+B,EAAiB+Z,cAAcp5C,IAAQA,GAAOu2B,EAAWv2B,GACtDkB,IACNikD,IA6CDC,EAAmB,SAA0B7iD,EAAMu8C,EAAM9qB,GAC3D,OAAQzxB,GACN,KAAK88B,EAAiBQ,UAAUW,MAC9B,MAAO,CACL6kB,YAAa,WACX,OAvCuEn8B,EAuC5B41B,EAAK51B,MAvC8BqN,EAuCvBuoB,EAAKre,iBAnCnD6kB,EAAa,CAC5BtlD,IAAKkpB,IACOmW,EAAiB2b,mBAAoB,EAC/C9gD,EAAQgrD,EAAqC3uB,EADQ+uB,GAElD,CAACtmB,EAAQnnC,QAAQgG,cAAcwhC,EAAiBQ,UAAUW,MAAOtmC,EAAOgvB,IAR7C,IAA6CA,EAAOqN,EAClF+uB,EAMAprD,GAkCEqa,SAAU,WACR,OA9EkB,SAA+BhS,EAAM2mB,EAAOqN,EAAYvC,GAClF,IAAIuxB,EAAkBP,EAAkCzuB,GACpDivB,EAAiB3B,EAAa36B,GAClC,OAAOq8B,EAAkB,IAAMhjD,EAAO,IAAM88B,EAAiB2b,iBAAmB,WAAeuK,EAAkB,IAAMzjB,EAAwB0jB,EAAgBxxB,GAAU,KAAOzxB,EAAO,IAAM,IAAMA,EAAO,IAAM88B,EAAiB2b,iBAAmB,WAAelZ,EAAwB0jB,EAAgBxxB,GAAU,KAAOzxB,EAAO,IA2EpTkjD,CAAsBljD,EAAMu8C,EAAK51B,MAAO41B,EAAKre,gBAAiBzM,KAI3E,KAAKqL,EAAiB4Z,gBAAgBvY,KACtC,KAAKrB,EAAiB4Z,gBAAgBrY,KACpC,MAAO,CACLykB,YAAa,WACX,OAAOH,EAAqCpG,IAE9CvqC,SAAU,WACR,OAAOywC,EAAkClG,KAI/C,QACE,MAAO,CACLuG,YAAa,WACX,OAjDyB,SAAsC9iD,EAAMu8C,GAC7E,OAAOA,EAAKx5C,KAAI,SAAU+wB,EAAKjyB,GAC7B,IAAIshD,EAEAC,IAAaD,EAAa,CAC5B1lD,IAAKoE,IACOi7B,EAAiB2b,mBAAoB,EAAM0K,GAazD,OAZAnkD,OAAOyC,KAAKqyB,GAAKx5B,SAAQ,SAAUunD,GACjC,IAAIwB,EAAkBvmB,EAAiB+Z,cAAcgL,IAAcA,EAEnE,GAAIwB,IAAoBvmB,EAAiBia,eAAeK,YAAciM,IAAoBvmB,EAAiBia,eAAeE,SAAU,CAClI,IAAIlyC,EAAU+uB,EAAI6G,WAAa7G,EAAI4J,QACnC0lB,EAAUh5B,wBAA0B,CAClCC,OAAQtlB,QAGVq+C,EAAUC,GAAmBvvB,EAAI+tB,MAG9BplB,EAAQnnC,QAAQgG,cAAc0E,EAAMojD,MA8B9BE,CAA6BtjD,EAAMu8C,IAE5CvqC,SAAU,WACR,OA7FiB,SAA8BhS,EAAMu8C,EAAM9qB,GACnE,OAAO8qB,EAAK/2C,QAAO,SAAU4a,EAAK0T,GAChC,IAAIyvB,EAAgBvkD,OAAOyC,KAAKqyB,GAAK17B,QAAO,SAAUypD,GACpD,QAASA,IAAc/kB,EAAiBia,eAAeK,YAAcyK,IAAc/kB,EAAiBia,eAAeE,aAClHzxC,QAAO,SAAUpO,EAAQyqD,GAC1B,IAAIa,OAAiC,IAAnB5uB,EAAI+tB,GAA6BA,EAAYA,EAAY,KAAQtiB,EAAwBzL,EAAI+tB,GAAYpwB,GAAU,IACrI,OAAOr6B,EAASA,EAAS,IAAMsrD,EAAOA,IACrC,IACCc,EAAa1vB,EAAI6G,WAAa7G,EAAI4J,SAAW,GAC7C+lB,GAAsE,IAAtD3mB,EAAiB0b,kBAAkBtyC,QAAQlG,GAC/D,OAAOogB,EAAM,IAAMpgB,EAAO,IAAM88B,EAAiB2b,iBAAmB,WAAe8K,GAAiBE,EAAgB,KAAO,IAAMD,EAAa,KAAOxjD,EAAO,OAC3J,IAkFY0jD,CAAqB1jD,EAAMu8C,EAAM9qB,OAmClD78B,EAAQmqC,kCA1GgC,SAA2CpnC,GACjF,IAAIgsD,EAAiBrjD,UAAUH,OAAS,QAAsB4B,IAAjBzB,UAAU,GAAmBA,UAAU,GAAK,GACzF,OAAOtB,OAAOyC,KAAK9J,GAAO6N,QAAO,SAAU7G,EAAKlB,GAE9C,OADAkB,EAAIm+B,EAAiByb,aAAa96C,IAAQA,GAAO9F,EAAM8F,GAChDkB,IACNglD,IAsGL/uD,EAAQooC,wBApTsB,SAAiC4jB,GACzDF,GACFJ,EAAqBI,GAGnBE,EAASthB,MACXohB,EAAkB/Z,GAAsB,WACtCga,EAAiBC,GAAU,WACzBF,EAAkB,YAItBC,EAAiBC,GACjBF,EAAkB,OAwStB9rD,EAAQiY,iBA/Be,SAA0BzW,GAC/C,IAAI0pC,EAAU1pC,EAAK0pC,QACf1B,EAAiBhoC,EAAKgoC,eACtB3M,EAASr7B,EAAKq7B,OACd6M,EAAiBloC,EAAKkoC,eACtByB,EAAW3pC,EAAK2pC,SAChBC,EAAW5pC,EAAK4pC,SAChBC,EAAe7pC,EAAK6pC,aACpBC,EAAa9pC,EAAK8pC,WAClBC,EAAY/pC,EAAK+pC,UACjByjB,EAAaxtD,EAAKuwB,MAClBA,OAAuB5kB,IAAf6hD,EAA2B,GAAKA,EACxC1lB,EAAkB9nC,EAAK8nC,gBAC3B,MAAO,CACL1nC,KAAMqsD,EAAiB/lB,EAAiBQ,UAAUqZ,KAAM7W,EAASrO,GACjE2M,eAAgBykB,EAAiB/lB,EAAiB4Z,gBAAgBvY,KAAMC,EAAgB3M,GACxF6M,eAAgBukB,EAAiB/lB,EAAiB4Z,gBAAgBrY,KAAMC,EAAgB7M,GACxFtN,KAAM0+B,EAAiB/lB,EAAiBQ,UAAU0B,KAAMe,EAAUtO,GAClE+N,KAAMqjB,EAAiB/lB,EAAiBQ,UAAU2B,KAAMe,EAAUvO,GAClEgO,SAAUojB,EAAiB/lB,EAAiBQ,UAAUE,SAAUyC,EAAcxO,GAC9EkO,OAAQkjB,EAAiB/lB,EAAiBQ,UAAUC,OAAQ2C,EAAYzO,GACxEl5B,MAAOsqD,EAAiB/lB,EAAiBQ,UAAUG,MAAO0C,EAAW1O,GACrE9K,MAAOk8B,EAAiB/lB,EAAiBQ,UAAUW,MAAO,CACxDtX,MAAOA,EACPuX,gBAAiBA,GAChBzM,KAOP78B,EAAQ+X,mBArWiB,SAA4BiyC,GACnD,MAAO,CACL9e,QAASuf,EAAwB,CAACviB,EAAiBia,eAAeG,MAAO0H,GACzExgB,eAAgB8gB,EAA2BpiB,EAAiB4Z,gBAAgBvY,KAAMygB,GAClFtf,MAAOwf,EAAqBF,EAAW9hB,EAAiBmb,aAAaE,OACrE1mB,OAAQqtB,EAAqBF,EAAW9hB,EAAiBmb,aAAaG,2BACtE9Z,eAAgB4gB,EAA2BpiB,EAAiB4Z,gBAAgBrY,KAAMugB,GAClF7e,SAAU0f,EAAqB3iB,EAAiBQ,UAAU0B,KAAM,CAAClC,EAAiBia,eAAeS,IAAK1a,EAAiBia,eAAeG,MAAO0H,GAC7I5e,SAAUyf,EAAqB3iB,EAAiBQ,UAAU2B,KAAM,CAACnC,EAAiBia,eAAeO,KAAMxa,EAAiBia,eAAeC,QAASla,EAAiBia,eAAeI,UAAWra,EAAiBia,eAAeQ,SAAUza,EAAiBia,eAAeM,WAAYuH,GACjR3e,aAAcwf,EAAqB3iB,EAAiBQ,UAAUE,SAAU,CAACV,EAAiBia,eAAeK,YAAawH,GACtHlf,oBAAqBuf,EAAuBL,GAC5C1e,WAAYuf,EAAqB3iB,EAAiBQ,UAAUC,OAAQ,CAACT,EAAiBia,eAAeU,IAAK3a,EAAiBia,eAAeK,YAAawH,GACvJze,UAAWsf,EAAqB3iB,EAAiBQ,UAAUG,MAAO,CAACX,EAAiBia,eAAeE,UAAW2H,GAC9Gj4B,MAAOg4B,EAAsBC,GAC7B1gB,gBAAiBghB,EAA2BpiB,EAAiB4Z,gBAAgBzY,MAAO2gB,KAwVxFhqD,EAAQ+xC,sBAAwBA,EAChC/xC,EAAQqI,KAAOA,I,+EC/hBf,qFAMI4mD,EAA2B,IAE3BC,EAA2B,SAAkCrmD,GAC/D,MAAe,UAARA,GAA2B,aAARA,GAGxBsmD,EAA8B,SAAqCjwB,GACrE,MAAsB,iBAARA,GAGdA,EAAI9iB,WAAW,GAAK,GAAK6yC,EAA2BC,GAGtD,SAAS95C,EAAQ1S,EAAQ2S,GACvB,IAAIxI,EAAOzC,OAAOyC,KAAKnK,GAEvB,GAAI0H,OAAOiC,sBAAuB,CAChC,IAAIiJ,EAAUlL,OAAOiC,sBAAsB3J,GACvC2S,IAAgBC,EAAUA,EAAQ9R,QAAO,SAAU+R,GACrD,OAAOnL,OAAOE,yBAAyB5H,EAAQ6S,GAAK9F,eAEtD5C,EAAKrM,KAAKuP,MAAMlD,EAAMyI,GAGxB,OAAOzI,EAGT,SAASojB,EAAcrqB,GACrB,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAAyB,MAAhBpE,UAAUuB,GAAavB,UAAUuB,GAAK,GAE/CA,EAAI,EACNmI,EAAQtF,GAAQ,GAAMpK,SAAQ,SAAUmD,GACtC,IAAgBjD,EAAQiD,EAAKiH,EAAOjH,OAE7BuB,OAAOqL,0BAChBrL,OAAOsL,iBAAiB9P,EAAQwE,OAAOqL,0BAA0B3F,IAEjEsF,EAAQtF,GAAQpK,SAAQ,SAAUmD,GAChCuB,OAAOC,eAAezE,EAAQiD,EAAKuB,OAAOE,yBAAyBwF,EAAQjH,OAKjF,OAAOjD,EA8IM,IAzII,SAASwpD,EAAalwB,EAAK12B,GAO5C,IAAI+kB,EACA8hC,EACAC,OAEYniD,IAAZ3E,IACF+kB,EAAiB/kB,EAAQirB,MACzB67B,EAAkB9mD,EAAQ5C,OAC1BypD,EAAoBnwB,EAAIqwB,uBAAyB/mD,EAAQ6mD,kBAAoB,SAAUG,GACrF,OAAOtwB,EAAIqwB,sBAAsBC,IACjChnD,EAAQ6mD,kBAAkBG,IACxBhnD,EAAQ6mD,mBAGd,IAAII,EAASvwB,EAAIwwB,iBAAmBxwB,EAChCgM,EAAUukB,GAAUvwB,EAAIywB,gBAAkBzwB,EAEb,mBAAtBmwB,GAAoCI,IAC7CJ,EAAoBnwB,EAAIqwB,uBAG1B,IAAIK,EAA2BP,GAAqBF,EAA4BjkB,GAC5E2kB,GAAeD,EAAyB,MAC5C,OAAO,WACL,IAAIn+C,EAAO/F,UACPsD,EAASygD,QAAmCtiD,IAAzB+xB,EAAIvS,iBAAiCuS,EAAIvS,iBAAiB7qB,MAAM,GAAK,GAM5F,QAJuBqL,IAAnBogB,GACFve,EAAOxO,KAAK,SAAW+sB,EAAiB,KAG3B,MAAX9b,EAAK,SAA8BtE,IAAhBsE,EAAK,GAAG4b,IAC7Bre,EAAOxO,KAAKuP,MAAMf,EAAQyC,OACrB,CACD,EAIJzC,EAAOxO,KAAKiR,EAAK,GAAG,IAIpB,IAHA,IAAIC,EAAMD,EAAKlG,OACX0B,EAAI,EAEDA,EAAIyE,EAAKzE,IAKd+B,EAAOxO,KAAKiR,EAAKxE,GAAIwE,EAAK,GAAGxE,IAKjC,IAAI6iD,EAAS,aAAiB,SAAU/sD,EAAOod,EAAS/a,GACtD,OAAO,wBAAc,IAAa+qB,SAAU,MAAM,SAAU5gB,GAC1D,IAAIwgD,EAAWF,GAAe9sD,EAAMu9C,IAAMpV,EACtC3nC,EAAY,GACZysD,EAAsB,GACtBzjC,EAAcxpB,EAElB,GAAmB,MAAfA,EAAMwM,MAAe,CAGvB,IAAK,IAAI1G,KAFT0jB,EAAc,GAEExpB,EACdwpB,EAAY1jB,GAAO9F,EAAM8F,GAG3B0jB,EAAYhd,MAAQA,EAGS,iBAApBxM,EAAMQ,UACfA,EAAY,YAAoB4c,EAAQqM,WAAYwjC,EAAqBjtD,EAAMQ,WACnD,MAAnBR,EAAMQ,YACfA,EAAYR,EAAMQ,UAAY,KAGhC,IAAIo0B,EAAa,YAAgB3oB,EAAOlC,OAAOkjD,GAAsB7vC,EAAQqM,WAAYD,GAC7E,YAAapM,EAASwX,EAAgC,iBAAbo4B,GACrDxsD,GAAa4c,EAAQtX,IAAM,IAAM8uB,EAAWrsB,UAEpB6B,IAApBmiD,IACF/rD,GAAa,IAAM+rD,GAGrB,IAAIW,EAAyBJ,QAAqC1iD,IAAtBkiD,EAAkCF,EAA4BY,GAAYH,EAClHr4C,EAAW,GAEf,IAAK,IAAIwK,KAAQhf,EACX8sD,GAAwB,OAAT9tC,GAGnBkuC,EAAuBluC,KACrBxK,EAASwK,GAAQhf,EAAMgf,IAY3B,OARAxK,EAAShU,UAAYA,EACrBgU,EAASnS,IAAMA,GAAOrC,EAAMwC,SAMlB,wBAAcwqD,EAAUx4C,SAyBtC,OArBAu4C,EAAO/kD,iBAAiCoC,IAAnBogB,EAA+BA,EAAiB,WAAgC,iBAAZ2d,EAAuBA,EAAUA,EAAQngC,aAAemgC,EAAQ5/B,MAAQ,aAAe,IAChLwkD,EAAOhlD,aAAeo0B,EAAIp0B,aAC1BglD,EAAOJ,eAAiBI,EACxBA,EAAOH,eAAiBzkB,EACxB4kB,EAAOnjC,iBAAmB3d,EAC1B8gD,EAAOP,sBAAwBF,EAC/BjlD,OAAOC,eAAeylD,EAAQ,WAAY,CACxC9mD,MAAO,WAML,MAAO,IAAMsmD,KAIjBQ,EAAOI,cAAgB,SAAUC,EAASC,GACxC,OAAOhB,EAAae,OAAyBhjD,IAAhBijD,EAA4BngC,EAAc,GAAIznB,GAAW,GAAI,GAAI4nD,GAAe5nD,GAASuH,WAAM,EAAQf,IAG/H8gD,K,kCC5LI,SAASlgD,IAetB,OAdAA,EAAWxF,OAAOyF,QAAU,SAAUjK,GACpC,IAAK,IAAIqH,EAAI,EAAGA,EAAIvB,UAAUH,OAAQ0B,IAAK,CACzC,IAAI6C,EAASpE,UAAUuB,GAEvB,IAAK,IAAIpE,KAAOiH,EACV1F,OAAOjG,UAAUqB,eAAevC,KAAK6M,EAAQjH,KAC/CjD,EAAOiD,GAAOiH,EAAOjH,IAK3B,OAAOjD,IAGOmK,MAAM7M,KAAMwI,WAf9B,mC,qBCAA,IAAMiyB,EAAU59B,EAAQ,Q,EAOpBA,EAAQ,QAAYskB,aALtB28B,E,EAAAA,wBACAC,E,EAAAA,4BACAV,E,EAAAA,2BACArP,E,EAAAA,SACAuB,E,EAAAA,aAGFzyC,EAAQokB,UAAY,SAACisC,EAAK5+C,EAAW6+C,EAAeC,QAAiB,IAA3C9+C,MAAO,IAY/B,IAAIigC,EAAU/T,EAAQxvB,KAAI,SAAA8Z,GACxB,GAAKA,EAAOA,OAAOooC,GAAnB,CAKA5+C,EAAKwvC,4BAA8BA,EAEnCxvC,EAAKuvC,wBAA0BA,EAC/BvvC,EAAK8uC,2BAA6BA,EAClC9uC,EAAKy/B,SAAWA,EAChBz/B,EAAKghC,aAAeA,EAEpB,IAAM5zB,EAASoJ,EAAOA,OAAOooC,GAAK5+C,EAAMwW,EAAOzf,SAI/C,OAHIqW,GAAU0xC,IACZ9+C,EAAO8+C,EAAa,CAAE9+C,OAAMoN,SAAQoJ,YAE/BpJ,MAMT,OAFA6yB,EAAUA,EAAQluC,QAAO,SAAAqb,GAAM,YAAI,IAAOA,MAE9BtT,OAAS,EACZmmC,EACE4e,EACF,CAACA,GAED,IAIXtwD,EAAQkzC,eAAiB,SAACmd,EAAK5+C,EAAM6+C,GAAZ,OACvB3yB,EAAQ/sB,QACN,SAAC4/C,EAAUnkC,GAAX,OACEA,EAAKpE,OAAOooC,GACRG,EAAShyC,MAAK,kBAAM6N,EAAKpE,OAAOooC,GAAK5+C,EAAM4a,EAAK7jB,YAChDgoD,IACNx1C,QAAQ5Y,a,kCCzDZ,IAMIm4B,EAJuCqR,EAFvCl0B,EAAQ3X,EAAQ,QAQpB,IAN2C6rC,EAOlB7rC,EAAQ0wD,QAA/Bl2B,EANOqR,GAAKA,EAAElrC,SAAWkrC,EAOzB,MAAO7kC,GACP,MAA2D,IAAvDA,EAAEqW,WAAW9L,QAAQ,6BACjB,IAAI4G,MAAM,0OAIhB9P,QAAQmW,MAAMxX,GACRA,GAKV+C,EAAO9J,QAAU,SAAUwB,GACzB,IAAIuhB,EAAUvhB,EAAKuhB,QACfhgB,EAAQvB,EAAKuB,MACjB,OAAoB2U,EAAMhR,cAAc6zB,EAAQx3B,EAAOggB,K,kCCqBzDjZ,EAAO9J,QA5BS,SAAS0wD,EAAWC,EAAQjpC,EAAGC,EAAG2Y,EAAG5O,EAAG3qB,EAAG8mC,GAOzD,IAAK6iB,EAAW,CACd,IAAInyC,EACJ,QAAepR,IAAXwjD,EACFpyC,EAAQ,IAAIrG,MACV,qIAGG,CACL,IAAIzG,EAAO,CAACiW,EAAGC,EAAG2Y,EAAG5O,EAAG3qB,EAAG8mC,GACvB+iB,EAAW,GACfryC,EAAQ,IAAIrG,MACVy4C,EAAOpwD,QAAQ,OAAO,WAAa,OAAOkR,EAAKm/C,UAE3CtlD,KAAO,sBAIf,MADAiT,EAAMsyC,YAAc,EACdtyC,K,oCC5CV,kCAoDA,IAAIuyC,EAA0B,WAC5B,SAASA,EAAWtoD,GAClBtF,KAAKs1B,cAA8BrrB,IAAnB3E,EAAQ+vB,QAA+D/vB,EAAQ+vB,OAC/Fr1B,KAAKykD,KAAO,GACZzkD,KAAK6tD,IAAM,EACX7tD,KAAK8sC,MAAQxnC,EAAQwnC,MAErB9sC,KAAK2F,IAAML,EAAQK,IACnB3F,KAAKosC,UAAY9mC,EAAQ8mC,UACzBpsC,KAAKq6B,OAAS,KAGhB,IAAIr5B,EAAS4sD,EAAW3sD,UAiExB,OA/DAD,EAAO2zB,OAAS,SAAgBm5B,GAI9B,GAAI9tD,KAAK6tD,KAAO7tD,KAAKs1B,SAAW,KAAQ,IAAO,EAAG,CAChD,IAEI+E,EAFA0zB,EA/BV,SAA4BzoD,GAC1B,IAAI02B,EAAMpnB,SAASpR,cAAc,SAQjC,OAPAw4B,EAAIqd,aAAa,eAAgB/zC,EAAQK,UAEnBsE,IAAlB3E,EAAQwnC,OACV9Q,EAAIqd,aAAa,QAAS/zC,EAAQwnC,OAGpC9Q,EAAI2Q,YAAY/3B,SAAS21C,eAAe,KACjCvuB,EAsBQgyB,CAAmBhuD,MAK5Bq6B,EADuB,IAArBr6B,KAAKykD,KAAKp8C,OACHrI,KAAKq6B,OAELr6B,KAAKykD,KAAKzkD,KAAKykD,KAAKp8C,OAAS,GAAG4lD,YAG3CjuD,KAAKosC,UAAUjS,aAAa4zB,EAAM1zB,GAClCr6B,KAAKykD,KAAKnnD,KAAKywD,GAGjB,IAAI/xB,EAAMh8B,KAAKykD,KAAKzkD,KAAKykD,KAAKp8C,OAAS,GAEvC,GAAIrI,KAAKs1B,SAAU,CACjB,IAAIV,EAjEV,SAAqBoH,GACnB,GAAIA,EAAIpH,MAEN,OAAOoH,EAAIpH,MAMb,IAAK,IAAI7qB,EAAI,EAAGA,EAAI6K,SAASs5C,YAAY7lD,OAAQ0B,IAC/C,GAAI6K,SAASs5C,YAAYnkD,GAAGokD,YAAcnyB,EAExC,OAAOpnB,SAASs5C,YAAYnkD,GAqDhBqkD,CAAYpyB,GAExB,IAKE,IAAIqyB,EAAsC,MAAvBP,EAAK50C,WAAW,IAAqC,KAAvB40C,EAAK50C,WAAW,GAGjE0b,EAAM05B,WAAWR,EASjBO,EAAe,EAAIz5B,EAAM25B,SAASlmD,QAClC,MAAOxE,GACH,QAKNm4B,EAAI2Q,YAAY/3B,SAAS21C,eAAeuD,IAG1C9tD,KAAK6tD,OAGP7sD,EAAOo1B,MAAQ,WAEbp2B,KAAKykD,KAAKjiD,SAAQ,SAAUw5B,GAC1B,OAAOA,EAAI0Q,WAAWge,YAAY1uB,MAEpCh8B,KAAKykD,KAAO,GACZzkD,KAAK6tD,IAAM,GAGND,EA7EqB,I,kCCpDf,SAASh7C,EAA8BhG,EAAQ8F,GAC5D,GAAc,MAAV9F,EAAgB,MAAO,GAC3B,IAEIjH,EAAKoE,EAFLrH,EAAS,GACTiQ,EAAazL,OAAOyC,KAAKiD,GAG7B,IAAK7C,EAAI,EAAGA,EAAI4I,EAAWtK,OAAQ0B,IACjCpE,EAAMgN,EAAW5I,GACb2I,EAAStE,QAAQzI,IAAQ,IAC7BjD,EAAOiD,GAAOiH,EAAOjH,IAGvB,OAAOjD,EAZT,oC","file":"app-55220dc7c065ea1bf3d7.js","sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.withPrefix = withPrefix;\nexports.withAssetPrefix = withAssetPrefix;\nexports.navigateTo = exports.replace = exports.push = exports.navigate = exports.default = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _router = require(\"@reach/router\");\n\nvar _utils = require(\"@reach/router/lib/utils\");\n\nvar _parsePath = require(\"./parse-path\");\n\nexports.parsePath = _parsePath.parsePath;\n\nvar isAbsolutePath = function isAbsolutePath(path) {\n return path === null || path === void 0 ? void 0 : path.startsWith(\"/\");\n};\n\nfunction withPrefix(path, prefix) {\n var _ref, _prefix;\n\n if (prefix === void 0) {\n prefix = getGlobalBasePrefix();\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n if (path.startsWith(\"./\") || path.startsWith(\"../\")) {\n return path;\n }\n\n var base = (_ref = (_prefix = prefix) !== null && _prefix !== void 0 ? _prefix : getGlobalPathPrefix()) !== null && _ref !== void 0 ? _ref : \"/\";\n return \"\" + ((base === null || base === void 0 ? void 0 : base.endsWith(\"/\")) ? base.slice(0, -1) : base) + (path.startsWith(\"/\") ? path : \"/\" + path);\n} // These global values are wrapped in typeof clauses to ensure the values exist.\n// This is especially problematic in unit testing of this component.\n\n\nvar getGlobalPathPrefix = function getGlobalPathPrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __PATH_PREFIX__ !== \"undefined\" ? __PATH_PREFIX__ : undefined : __PATH_PREFIX__;\n};\n\nvar getGlobalBasePrefix = function getGlobalBasePrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __BASE_PATH__ !== \"undefined\" ? __BASE_PATH__ : undefined : __BASE_PATH__;\n};\n\nvar isLocalLink = function isLocalLink(path) {\n return path && !path.startsWith(\"http://\") && !path.startsWith(\"https://\") && !path.startsWith(\"//\");\n};\n\nfunction withAssetPrefix(path) {\n return withPrefix(path, getGlobalPathPrefix());\n}\n\nfunction absolutify(path, current) {\n // If it's already absolute, return as-is\n if (isAbsolutePath(path)) {\n return path;\n }\n\n return (0, _utils.resolve)(path, current);\n}\n\nvar rewriteLinkPath = function rewriteLinkPath(path, relativeTo) {\n if (typeof path === \"number\") {\n return path;\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n return isAbsolutePath(path) ? withPrefix(path) : absolutify(path, relativeTo);\n};\n\nvar NavLinkPropTypes = {\n activeClassName: _propTypes.default.string,\n activeStyle: _propTypes.default.object,\n partiallyActive: _propTypes.default.bool\n}; // Set up IntersectionObserver\n\nvar createIntersectionObserver = function createIntersectionObserver(el, cb) {\n var io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (el === entry.target) {\n // Check if element is within viewport, remove listener, destroy observer, and run link callback.\n // MSEdge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(el);\n io.disconnect();\n cb();\n }\n }\n });\n }); // Add element to the observer\n\n io.observe(el);\n return {\n instance: io,\n el: el\n };\n};\n\nvar GatsbyLink = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(GatsbyLink, _React$Component);\n\n function GatsbyLink(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // Default to no support for IntersectionObserver\n\n _this.defaultGetProps = function (_ref2) {\n var isPartiallyCurrent = _ref2.isPartiallyCurrent,\n isCurrent = _ref2.isCurrent;\n\n if (_this.props.partiallyActive ? isPartiallyCurrent : isCurrent) {\n return {\n className: [_this.props.className, _this.props.activeClassName].filter(Boolean).join(\" \"),\n style: (0, _extends2.default)({}, _this.props.style, _this.props.activeStyle)\n };\n }\n\n return null;\n };\n\n var IOSupported = false;\n\n if (typeof window !== \"undefined\" && window.IntersectionObserver) {\n IOSupported = true;\n }\n\n _this.state = {\n IOSupported: IOSupported\n };\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n var _proto = GatsbyLink.prototype;\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n // Preserve non IO functionality if no support\n if (this.props.to !== prevProps.to && !this.state.IOSupported) {\n ___loader.enqueue((0, _parsePath.parsePath)(rewriteLinkPath(this.props.to, window.location.pathname)).pathname);\n }\n };\n\n _proto.componentDidMount = function componentDidMount() {\n // Preserve non IO functionality if no support\n if (!this.state.IOSupported) {\n ___loader.enqueue((0, _parsePath.parsePath)(rewriteLinkPath(this.props.to, window.location.pathname)).pathname);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (!this.io) {\n return;\n }\n\n var _this$io = this.io,\n instance = _this$io.instance,\n el = _this$io.el;\n instance.unobserve(el);\n instance.disconnect();\n };\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.props.innerRef && this.props.innerRef.hasOwnProperty(\"current\")) {\n this.props.innerRef.current = ref;\n } else if (this.props.innerRef) {\n this.props.innerRef(ref);\n }\n\n if (this.state.IOSupported && ref) {\n // If IO supported and element reference found, setup Observer functionality\n this.io = createIntersectionObserver(ref, function () {\n ___loader.enqueue((0, _parsePath.parsePath)(rewriteLinkPath(_this2.props.to, window.location.pathname)).pathname);\n });\n }\n };\n\n _proto.render = function render() {\n var _this3 = this;\n\n var _this$props = this.props,\n to = _this$props.to,\n _this$props$getProps = _this$props.getProps,\n getProps = _this$props$getProps === void 0 ? this.defaultGetProps : _this$props$getProps,\n _onClick = _this$props.onClick,\n _onMouseEnter = _this$props.onMouseEnter,\n $activeClassName = _this$props.activeClassName,\n $activeStyle = _this$props.activeStyle,\n $innerRef = _this$props.innerRef,\n partiallyActive = _this$props.partiallyActive,\n state = _this$props.state,\n replace = _this$props.replace,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_this$props, [\"to\", \"getProps\", \"onClick\", \"onMouseEnter\", \"activeClassName\", \"activeStyle\", \"innerRef\", \"partiallyActive\", \"state\", \"replace\"]);\n\n if (process.env.NODE_ENV !== \"production\" && !isLocalLink(to)) {\n console.warn(\"External link \" + to + \" was detected in a Link component. Use the Link component only for internal links. See: https://gatsby.dev/internal-links\");\n }\n\n return /*#__PURE__*/_react.default.createElement(_router.Location, null, function (_ref3) {\n var location = _ref3.location;\n var prefixedTo = rewriteLinkPath(to, location.pathname);\n return isLocalLink(prefixedTo) ? /*#__PURE__*/_react.default.createElement(_router.Link, (0, _extends2.default)({\n to: prefixedTo,\n state: state,\n getProps: getProps,\n innerRef: _this3.handleRef,\n onMouseEnter: function onMouseEnter(e) {\n if (_onMouseEnter) {\n _onMouseEnter(e);\n }\n\n ___loader.hovering((0, _parsePath.parsePath)(prefixedTo).pathname);\n },\n onClick: function onClick(e) {\n if (_onClick) {\n _onClick(e);\n }\n\n if (e.button === 0 && // ignore right clicks\n !_this3.props.target && // let browser handle \"target=_blank\"\n !e.defaultPrevented && // onClick prevented default\n !e.metaKey && // ignore clicks with modifier keys...\n !e.altKey && !e.ctrlKey && !e.shiftKey) {\n e.preventDefault();\n var shouldReplace = replace;\n var isCurrent = encodeURI(prefixedTo) === window.location.pathname;\n\n if (typeof replace !== \"boolean\" && isCurrent) {\n shouldReplace = true;\n } // Make sure the necessary scripts and data are\n // loaded before continuing.\n\n\n window.___navigate(prefixedTo, {\n state: state,\n replace: shouldReplace\n });\n }\n\n return true;\n }\n }, rest)) : /*#__PURE__*/_react.default.createElement(\"a\", (0, _extends2.default)({\n href: prefixedTo\n }, rest));\n });\n };\n\n return GatsbyLink;\n}(_react.default.Component);\n\nGatsbyLink.propTypes = (0, _extends2.default)({}, NavLinkPropTypes, {\n onClick: _propTypes.default.func,\n to: _propTypes.default.string.isRequired,\n replace: _propTypes.default.bool,\n state: _propTypes.default.object\n});\n\nvar showDeprecationWarning = function showDeprecationWarning(functionName, altFunctionName, version) {\n return console.warn(\"The \\\"\" + functionName + \"\\\" method is now deprecated and will be removed in Gatsby v\" + version + \". Please use \\\"\" + altFunctionName + \"\\\" instead.\");\n};\n\nvar _default = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n return /*#__PURE__*/_react.default.createElement(GatsbyLink, (0, _extends2.default)({\n innerRef: ref\n }, props));\n});\n\nexports.default = _default;\n\nvar navigate = function navigate(to, options) {\n window.___navigate(rewriteLinkPath(to, window.location.pathname), options);\n};\n\nexports.navigate = navigate;\n\nvar push = function push(to) {\n showDeprecationWarning(\"push\", \"navigate\", 3);\n\n window.___push(rewriteLinkPath(to, window.location.pathname));\n};\n\nexports.push = push;\n\nvar replace = function replace(to) {\n showDeprecationWarning(\"replace\", \"navigate\", 3);\n\n window.___replace(rewriteLinkPath(to, window.location.pathname));\n}; // TODO: Remove navigateTo for Gatsby v3\n\n\nexports.replace = replace;\n\nvar navigateTo = function navigateTo(to) {\n showDeprecationWarning(\"navigateTo\", \"navigate\", 3);\n return push(to);\n};\n\nexports.navigateTo = navigateTo;","\"use strict\";\n\nexports.__esModule = true;\nexports.SessionStorage = void 0;\nvar STATE_KEY_PREFIX = \"@@scroll|\";\nvar GATSBY_ROUTER_SCROLL_STATE = \"___GATSBY_REACT_ROUTER_SCROLL\";\n\nvar SessionStorage = /*#__PURE__*/function () {\n function SessionStorage() {}\n\n var _proto = SessionStorage.prototype;\n\n _proto.read = function read(location, key) {\n var stateKey = this.getStateKey(location, key);\n\n try {\n var value = window.sessionStorage.getItem(stateKey);\n return value ? JSON.parse(value) : 0;\n } catch (e) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to access sessionStorage; sessionStorage is not available.\");\n }\n\n if (window && window[GATSBY_ROUTER_SCROLL_STATE] && window[GATSBY_ROUTER_SCROLL_STATE][stateKey]) {\n return window[GATSBY_ROUTER_SCROLL_STATE][stateKey];\n }\n\n return 0;\n }\n };\n\n _proto.save = function save(location, key, value) {\n var stateKey = this.getStateKey(location, key);\n var storedValue = JSON.stringify(value);\n\n try {\n window.sessionStorage.setItem(stateKey, storedValue);\n } catch (e) {\n if (window && window[GATSBY_ROUTER_SCROLL_STATE]) {\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n } else {\n window[GATSBY_ROUTER_SCROLL_STATE] = {};\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to save state in sessionStorage; sessionStorage is not available.\");\n }\n }\n };\n\n _proto.getStateKey = function getStateKey(location, key) {\n var stateKeyBase = \"\" + STATE_KEY_PREFIX + location.pathname;\n return key === null || typeof key === \"undefined\" ? stateKeyBase : stateKeyBase + \"|\" + key;\n };\n\n return SessionStorage;\n}();\n\nexports.SessionStorage = SessionStorage;","var _typeof = require(\"@babel/runtime/helpers/typeof\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nmodule.exports = _interopRequireWildcard;","'use strict';\n\nvar reactIs = require('react-is');\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\n\n\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\n\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;","export default path => {\n if (path === undefined) {\n return path\n }\n if (path === `/`) {\n return `/`\n }\n if (path.charAt(path.length - 1) === `/`) {\n return path.slice(0, -1)\n }\n return path\n}\n","import { pick } from \"@reach/router/lib/utils\"\nimport stripPrefix from \"./strip-prefix\"\nimport normalizePagePath from \"./normalize-page-path\"\n\nconst pathCache = new Map()\nlet matchPaths = []\n\nconst trimPathname = rawPathname => {\n const pathname = decodeURIComponent(rawPathname)\n // Remove the pathPrefix from the pathname.\n const trimmedPathname = stripPrefix(pathname, __BASE_PATH__)\n // Remove any hashfragment\n .split(`#`)[0]\n // Remove search query\n .split(`?`)[0]\n\n return trimmedPathname\n}\n\nfunction absolutify(path) {\n // If it's already absolute, return as-is\n if (\n path.startsWith(`/`) ||\n path.startsWith(`https://`) ||\n path.startsWith(`http://`)\n ) {\n return path\n }\n // Calculate path relative to current location, adding a trailing slash to\n // match behavior of @reach/router\n return new URL(\n path,\n window.location.href + (window.location.href.endsWith(`/`) ? `` : `/`)\n ).pathname\n}\n\n/**\n * Set list of matchPaths\n *\n * @param {Array<{path: string, matchPath: string}>} value collection of matchPaths\n */\nexport const setMatchPaths = value => {\n matchPaths = value\n}\n\n/**\n * Return a matchpath url\n * if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n * `/foo?bar=far` => `/page1`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string|null}\n */\nexport const findMatchPath = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return normalizePagePath(path.route.originalPath)\n }\n\n return null\n}\n\n/**\n * Return a matchpath params from reach/router rules\n * if `match-paths.json` contains `{ \":bar/*foo\" }`, and the path is /baz/zaz/zoo\n * then it returns\n * { bar: baz, foo: zaz/zoo }\n *\n * @param {string} rawPathname A raw pathname\n * @return {object}\n */\nexport const grabMatchParams = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return path.params\n }\n\n return {}\n}\n\n// Given a raw URL path, returns the cleaned version of it (trim off\n// `#` and query params), or if it matches an entry in\n// `match-paths.json`, its matched path is returned\n//\n// E.g. `/foo?bar=far` => `/foo`\n//\n// Or if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n// `/foo?bar=far` => `/page1`\nexport const findPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n if (pathCache.has(trimmedPathname)) {\n return pathCache.get(trimmedPathname)\n }\n\n let foundPath = findMatchPath(trimmedPathname)\n\n if (!foundPath) {\n foundPath = cleanPath(rawPathname)\n }\n\n pathCache.set(trimmedPathname, foundPath)\n\n return foundPath\n}\n\n/**\n * Clean a url and converts /index.html => /\n * E.g. `/foo?bar=far` => `/foo`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string}\n */\nexport const cleanPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n\n let foundPath = trimmedPathname\n if (foundPath === `/index.html`) {\n foundPath = `/`\n }\n\n foundPath = normalizePagePath(foundPath)\n\n return foundPath\n}\n","// Duotone Dark\n// Author: Simurai, adapted from DuoTone themes for Atom (http://simurai.com/projects/2016/01/01/duotone-themes)\n// Conversion: Bram de Haan (http://atelierbram.github.io/Base2Tone-prism/output/prism/prism-base2tone-evening-dark.css)\n// Generated with Base16 Builder (https://github.com/base16-builder/base16-builder)\nvar theme = {\n plain: {\n backgroundColor: \"#2a2734\",\n color: \"#9a86fd\"\n },\n styles: [{\n types: [\"comment\", \"prolog\", \"doctype\", \"cdata\", \"punctuation\"],\n style: {\n color: \"#6c6783\"\n }\n }, {\n types: [\"namespace\"],\n style: {\n opacity: 0.7\n }\n }, {\n types: [\"tag\", \"operator\", \"number\"],\n style: {\n color: \"#e09142\"\n }\n }, {\n types: [\"property\", \"function\"],\n style: {\n color: \"#9a86fd\"\n }\n }, {\n types: [\"tag-id\", \"selector\", \"atrule-id\"],\n style: {\n color: \"#eeebff\"\n }\n }, {\n types: [\"attr-name\"],\n style: {\n color: \"#c4b9fe\"\n }\n }, {\n types: [\"boolean\", \"string\", \"entity\", \"url\", \"attr-value\", \"keyword\", \"control\", \"directive\", \"unit\", \"statement\", \"regex\", \"at-rule\", \"placeholder\", \"variable\"],\n style: {\n color: \"#ffcc99\"\n }\n }, {\n types: [\"deleted\"],\n style: {\n textDecorationLine: \"line-through\"\n }\n }, {\n types: [\"inserted\"],\n style: {\n textDecorationLine: \"underline\"\n }\n }, {\n types: [\"italic\"],\n style: {\n fontStyle: \"italic\"\n }\n }, {\n types: [\"important\", \"bold\"],\n style: {\n fontWeight: \"bold\"\n }\n }, {\n types: [\"important\"],\n style: {\n color: \"#c4b9fe\"\n }\n }]\n};\nexport default theme;","import Prism from '../prism/index.js';\nexport { default as Prism } from '../prism/index.js';\nimport theme from '../themes/duotoneDark';\nimport { Component } from 'react';\nvar defaultProps = {\n // $FlowFixMe\n Prism: Prism,\n theme: theme\n};\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar newlineRe = /\\r\\n|\\r|\\n/; // Empty lines need to contain a single empty token, denoted with { empty: true }\n\nvar normalizeEmptyLines = function normalizeEmptyLines(line) {\n if (line.length === 0) {\n line.push({\n types: [\"plain\"],\n content: \"\",\n empty: true\n });\n } else if (line.length === 1 && line[0].content === \"\") {\n line[0].empty = true;\n }\n};\n\nvar appendTypes = function appendTypes(types, add) {\n var typesSize = types.length;\n\n if (typesSize > 0 && types[typesSize - 1] === add) {\n return types;\n }\n\n return types.concat(add);\n}; // Takes an array of Prism's tokens and groups them by line, turning plain\n// strings into tokens as well. Tokens can become recursive in some cases,\n// which means that their types are concatenated. Plain-string tokens however\n// are always of type \"plain\".\n// This is not recursive to avoid exceeding the call-stack limit, since it's unclear\n// how nested Prism's tokens can become\n\n\nvar normalizeTokens = function normalizeTokens(tokens) {\n var typeArrStack = [[]];\n var tokenArrStack = [tokens];\n var tokenArrIndexStack = [0];\n var tokenArrSizeStack = [tokens.length];\n var i = 0;\n var stackIndex = 0;\n var currentLine = [];\n var acc = [currentLine];\n\n while (stackIndex > -1) {\n while ((i = tokenArrIndexStack[stackIndex]++) < tokenArrSizeStack[stackIndex]) {\n var content = void 0;\n var types = typeArrStack[stackIndex];\n var tokenArr = tokenArrStack[stackIndex];\n var token = tokenArr[i]; // Determine content and append type to types if necessary\n\n if (typeof token === \"string\") {\n types = stackIndex > 0 ? types : [\"plain\"];\n content = token;\n } else {\n types = appendTypes(types, token.type);\n\n if (token.alias) {\n types = appendTypes(types, token.alias);\n }\n\n content = token.content;\n } // If token.content is an array, increase the stack depth and repeat this while-loop\n\n\n if (typeof content !== \"string\") {\n stackIndex++;\n typeArrStack.push(types);\n tokenArrStack.push(content);\n tokenArrIndexStack.push(0);\n tokenArrSizeStack.push(content.length);\n continue;\n } // Split by newlines\n\n\n var splitByNewlines = content.split(newlineRe);\n var newlineCount = splitByNewlines.length;\n currentLine.push({\n types: types,\n content: splitByNewlines[0]\n }); // Create a new line for each string on a new line\n\n for (var i$1 = 1; i$1 < newlineCount; i$1++) {\n normalizeEmptyLines(currentLine);\n acc.push(currentLine = []);\n currentLine.push({\n types: types,\n content: splitByNewlines[i$1]\n });\n }\n } // Decreate the stack depth\n\n\n stackIndex--;\n typeArrStack.pop();\n tokenArrStack.pop();\n tokenArrIndexStack.pop();\n tokenArrSizeStack.pop();\n }\n\n normalizeEmptyLines(currentLine);\n return acc;\n};\n\nvar themeToDict = function themeToDict(theme, language) {\n var plain = theme.plain; // $FlowFixMe\n\n var base = Object.create(null);\n var themeDict = theme.styles.reduce(function (acc, themeEntry) {\n var languages = themeEntry.languages;\n var style = themeEntry.style;\n\n if (languages && !languages.includes(language)) {\n return acc;\n }\n\n themeEntry.types.forEach(function (type) {\n // $FlowFixMe\n var accStyle = _extends({}, acc[type], style);\n\n acc[type] = accStyle;\n });\n return acc;\n }, base); // $FlowFixMe\n\n themeDict.root = plain; // $FlowFixMe\n\n themeDict.plain = _extends({}, plain, {\n backgroundColor: null\n });\n return themeDict;\n};\n\nfunction objectWithoutProperties(obj, exclude) {\n var target = {};\n\n for (var k in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, k) && exclude.indexOf(k) === -1) target[k] = obj[k];\n }\n\n return target;\n}\n\nvar Highlight = /*@__PURE__*/function (Component) {\n function Highlight() {\n var this$1 = this;\n var args = [],\n len = arguments.length;\n\n while (len--) {\n args[len] = arguments[len];\n }\n\n Component.apply(this, args);\n\n _defineProperty(this, \"getThemeDict\", function (props) {\n if (this$1.themeDict !== undefined && props.theme === this$1.prevTheme && props.language === this$1.prevLanguage) {\n return this$1.themeDict;\n }\n\n this$1.prevTheme = props.theme;\n this$1.prevLanguage = props.language;\n var themeDict = props.theme ? themeToDict(props.theme, props.language) : undefined;\n return this$1.themeDict = themeDict;\n });\n\n _defineProperty(this, \"getLineProps\", function (ref) {\n var key = ref.key;\n var className = ref.className;\n var style = ref.style;\n var rest$1 = objectWithoutProperties(ref, [\"key\", \"className\", \"style\", \"line\"]);\n var rest = rest$1;\n\n var output = _extends({}, rest, {\n className: \"token-line\",\n style: undefined,\n key: undefined\n });\n\n var themeDict = this$1.getThemeDict(this$1.props);\n\n if (themeDict !== undefined) {\n output.style = themeDict.plain;\n }\n\n if (style !== undefined) {\n output.style = output.style !== undefined ? _extends({}, output.style, style) : style;\n }\n\n if (key !== undefined) {\n output.key = key;\n }\n\n if (className) {\n output.className += \" \" + className;\n }\n\n return output;\n });\n\n _defineProperty(this, \"getStyleForToken\", function (ref) {\n var types = ref.types;\n var empty = ref.empty;\n var typesSize = types.length;\n var themeDict = this$1.getThemeDict(this$1.props);\n\n if (themeDict === undefined) {\n return undefined;\n } else if (typesSize === 1 && types[0] === \"plain\") {\n return empty ? {\n display: \"inline-block\"\n } : undefined;\n } else if (typesSize === 1 && !empty) {\n return themeDict[types[0]];\n }\n\n var baseStyle = empty ? {\n display: \"inline-block\"\n } : {}; // $FlowFixMe\n\n var typeStyles = types.map(function (type) {\n return themeDict[type];\n });\n return Object.assign.apply(Object, [baseStyle].concat(typeStyles));\n });\n\n _defineProperty(this, \"getTokenProps\", function (ref) {\n var key = ref.key;\n var className = ref.className;\n var style = ref.style;\n var token = ref.token;\n var rest$1 = objectWithoutProperties(ref, [\"key\", \"className\", \"style\", \"token\"]);\n var rest = rest$1;\n\n var output = _extends({}, rest, {\n className: \"token \" + token.types.join(\" \"),\n children: token.content,\n style: this$1.getStyleForToken(token),\n key: undefined\n });\n\n if (style !== undefined) {\n output.style = output.style !== undefined ? _extends({}, output.style, style) : style;\n }\n\n if (key !== undefined) {\n output.key = key;\n }\n\n if (className) {\n output.className += \" \" + className;\n }\n\n return output;\n });\n }\n\n if (Component) Highlight.__proto__ = Component;\n Highlight.prototype = Object.create(Component && Component.prototype);\n Highlight.prototype.constructor = Highlight;\n\n Highlight.prototype.render = function render() {\n var ref = this.props;\n var Prism = ref.Prism;\n var language = ref.language;\n var code = ref.code;\n var children = ref.children;\n var themeDict = this.getThemeDict(this.props);\n var grammar = Prism.languages[language];\n var mixedTokens = grammar !== undefined ? Prism.tokenize(code, grammar, language) : [code];\n var tokens = normalizeTokens(mixedTokens);\n return children({\n tokens: tokens,\n className: \"prism-code language-\" + language,\n style: themeDict !== undefined ? themeDict.root : {},\n getLineProps: this.getLineProps,\n getTokenProps: this.getTokenProps\n });\n };\n\n return Highlight;\n}(Component);\n\nexport default Highlight;\nexport { defaultProps };","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMi41MTciIGhlaWdodD0iMTAuMTY2IiB2aWV3Qm94PSIwIDAgMTIuNTE3IDEwLjE2NiI+CiAgICA8ZGVmcz4KICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgIC5jbHMtMXtmaWxsOiMyNDI5MmV9CiAgICAgICAgPC9zdHlsZT4KICAgIDwvZGVmcz4KICAgIDxwYXRoIGlkPSJ0d2l0dGVyLWJyYW5kcyIgZD0iTTExLjIzIDUwLjYxNmMuMDA4LjExMS4wMDguMjIyLjAwOC4zMzRhNy4yNDkgNy4yNDkgMCAwIDEtNy4zIDcuM0E3LjI0OSA3LjI0OSAwIDAgMSAwIDU3LjFhNS4zMDcgNS4zMDcgMCAwIDAgLjYxOS4wMzIgNS4xMzggNS4xMzggMCAwIDAgMy4xODUtMS4xIDIuNTcgMi41NyAwIDAgMS0yLjQtMS43NzkgMy4yMzUgMy4yMzUgMCAwIDAgLjQ4NC4wNCAyLjcxMyAyLjcxMyAwIDAgMCAuNjc1LS4wODcgMi41NjYgMi41NjYgMCAwIDEtMi4wNTUtMi41MTh2LS4wMzJhMi41ODQgMi41ODQgMCAwIDAgMS4xNi4zMjYgMi41NjkgMi41NjkgMCAwIDEtLjc5NC0zLjQzMSA3LjI5MiA3LjI5MiAwIDAgMCA1LjI5IDIuNjg0IDIuOSAyLjkgMCAwIDEtLjA2NC0uNTg4IDIuNTY4IDIuNTY4IDAgMCAxIDQuNDQtMS43NTUgNS4wNTEgNS4wNTEgMCAwIDAgMS42MjgtLjYxOSAyLjU1OCAyLjU1OCAwIDAgMS0xLjEyOCAxLjQxNCA1LjE0MyA1LjE0MyAwIDAgMCAxLjQ3Ny0uNCA1LjUxNSA1LjUxNSAwIDAgMS0xLjI4NyAxLjMyNnoiIGNsYXNzPSJjbHMtMSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAtNDguMDgyKSIvPgo8L3N2Zz4K\"","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = useScrollRestoration;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _react = require(\"react\");\n\nvar _router = require(\"@reach/router\");\n\nfunction useScrollRestoration(identifier) {\n var location = (0, _router.useLocation)();\n var state = (0, _react.useContext)(_scrollHandler.ScrollContext);\n var ref = (0, _react.useRef)();\n (0, _react.useLayoutEffect)(function () {\n if (ref.current) {\n var position = state.read(location, identifier);\n ref.current.scrollTo(0, position || 0);\n }\n }, []);\n return {\n ref: ref,\n onScroll: function onScroll() {\n if (ref.current) {\n state.save(location, identifier, ref.current.scrollTop);\n }\n }\n };\n}","function memoize(fn) {\n var cache = {};\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport default memoize;","// \n// An event handler can take an optional event argument\n// and should not return a value\n \n \n\n// An array of all currently registered event handlers for a type\n \n \n// A map of event types and their corresponding event handlers.\n \n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).slice().map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).slice().map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nexport default mitt;\n//# sourceMappingURL=mitt.es.js.map\n","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\n","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = exports.ScrollContainer = exports.ScrollContext = void 0;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nexports.ScrollContext = _scrollHandler.ScrollHandler;\n\nvar _scrollContainer = require(\"./scroll-container\");\n\nexports.ScrollContainer = _scrollContainer.ScrollContainer;\n\nvar _useScrollRestoration = require(\"./use-scroll-restoration\");\n\nexports.useScrollRestoration = _useScrollRestoration.useScrollRestoration;","import React from 'react';\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nvar isFunction = function isFunction(obj) {\n return typeof obj === 'function';\n};\n\nvar MDXContext = /*#__PURE__*/React.createContext({});\n\nvar withMDXComponents = function withMDXComponents(Component) {\n return function (props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n components: allComponents\n }));\n };\n};\n\nvar useMDXComponents = function useMDXComponents(components) {\n var contextComponents = React.useContext(MDXContext);\n var allComponents = contextComponents;\n\n if (components) {\n allComponents = isFunction(components) ? components(contextComponents) : _objectSpread2(_objectSpread2({}, contextComponents), components);\n }\n\n return allComponents;\n};\n\nvar MDXProvider = function MDXProvider(props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(MDXContext.Provider, {\n value: allComponents\n }, props.children);\n};\n\nvar TYPE_PROP_NAME = 'mdxType';\nvar DEFAULTS = {\n inlineCode: 'code',\n wrapper: function wrapper(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, {}, children);\n }\n};\nvar MDXCreateElement = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var propComponents = props.components,\n mdxType = props.mdxType,\n originalType = props.originalType,\n parentName = props.parentName,\n etc = _objectWithoutProperties(props, [\"components\", \"mdxType\", \"originalType\", \"parentName\"]);\n\n var components = useMDXComponents(propComponents);\n var type = mdxType;\n var Component = components[\"\".concat(parentName, \".\").concat(type)] || components[type] || DEFAULTS[type] || originalType;\n\n if (propComponents) {\n return /*#__PURE__*/React.createElement(Component, _objectSpread2(_objectSpread2({\n ref: ref\n }, etc), {}, {\n components: propComponents\n }));\n }\n\n return /*#__PURE__*/React.createElement(Component, _objectSpread2({\n ref: ref\n }, etc));\n});\nMDXCreateElement.displayName = 'MDXCreateElement';\n\nfunction createElement(type, props) {\n var args = arguments;\n var mdxType = props && props.mdxType;\n\n if (typeof type === 'string' || mdxType) {\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = MDXCreateElement;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.originalType = type;\n newProps[TYPE_PROP_NAME] = typeof type === 'string' ? type : mdxType;\n createElementArgArray[1] = newProps;\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n }\n\n return React.createElement.apply(null, createElementArgArray);\n }\n\n return React.createElement.apply(null, args);\n}\n\nexport { MDXContext, MDXProvider, createElement as mdx, useMDXComponents, withMDXComponents };","'use strict';\n\nfunction _interopDefault(ex) {\n return ex && typeof ex === 'object' && 'default' in ex ? ex['default'] : ex;\n}\n\nvar React = require('react');\n\nvar React__default = _interopDefault(React);\n\nvar shallowEqual = _interopDefault(require('shallowequal'));\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect = /*#__PURE__*/function (_Component) {\n _inheritsLoose(SideEffect, _Component);\n\n function SideEffect() {\n return _Component.apply(this, arguments) || this;\n } // Try to use displayName of wrapped component\n // Expose canUseDOM so tests can monkeypatch it\n\n\n SideEffect.peek = function peek() {\n return state;\n };\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !shallowEqual(nextProps, this.props);\n };\n\n _proto.componentWillMount = function componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.Component);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n _defineProperty(SideEffect, \"canUseDOM\", canUseDOM);\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;","exports.polyfill = Component => Component\n","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar getLocation = function getLocation(source) {\n var _source$location = source.location,\n search = _source$location.search,\n hash = _source$location.hash,\n href = _source$location.href,\n origin = _source$location.origin,\n protocol = _source$location.protocol,\n host = _source$location.host,\n hostname = _source$location.hostname,\n port = _source$location.port;\n var pathname = source.location.pathname;\n\n\n if (!pathname && href && canUseDOM) {\n var url = new URL(href);\n pathname = url.pathname;\n }\n\n return {\n pathname: encodeURI(decodeURI(pathname)),\n search: search,\n hash: hash,\n href: href,\n origin: origin,\n protocol: protocol,\n host: host,\n hostname: hostname,\n port: port,\n state: source.history.state,\n key: source.history.state && source.history.state.key || \"initial\"\n };\n};\n\nvar createHistory = function createHistory(source, options) {\n var listeners = [];\n var location = getLocation(source);\n var transitioning = false;\n var resolveTransition = function resolveTransition() {};\n\n return {\n get location() {\n return location;\n },\n\n get transitioning() {\n return transitioning;\n },\n\n _onTransitionComplete: function _onTransitionComplete() {\n transitioning = false;\n resolveTransition();\n },\n listen: function listen(listener) {\n listeners.push(listener);\n\n var popstateListener = function popstateListener() {\n location = getLocation(source);\n listener({ location: location, action: \"POP\" });\n };\n\n source.addEventListener(\"popstate\", popstateListener);\n\n return function () {\n source.removeEventListener(\"popstate\", popstateListener);\n listeners = listeners.filter(function (fn) {\n return fn !== listener;\n });\n };\n },\n navigate: function navigate(to) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n state = _ref.state,\n _ref$replace = _ref.replace,\n replace = _ref$replace === undefined ? false : _ref$replace;\n\n if (typeof to === \"number\") {\n source.history.go(to);\n } else {\n state = _extends({}, state, { key: Date.now() + \"\" });\n // try...catch iOS Safari limits to 100 pushState calls\n try {\n if (transitioning || replace) {\n source.history.replaceState(state, null, to);\n } else {\n source.history.pushState(state, null, to);\n }\n } catch (e) {\n source.location[replace ? \"replace\" : \"assign\"](to);\n }\n }\n\n location = getLocation(source);\n transitioning = true;\n var transition = new Promise(function (res) {\n return resolveTransition = res;\n });\n listeners.forEach(function (listener) {\n return listener({ location: location, action: \"PUSH\" });\n });\n return transition;\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Stores history entries in memory for testing or other platforms like Native\nvar createMemorySource = function createMemorySource() {\n var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"/\";\n\n var searchIndex = initialPath.indexOf(\"?\");\n var initialLocation = {\n pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,\n search: searchIndex > -1 ? initialPath.substr(searchIndex) : \"\"\n };\n var index = 0;\n var stack = [initialLocation];\n var states = [null];\n\n return {\n get location() {\n return stack[index];\n },\n addEventListener: function addEventListener(name, fn) {},\n removeEventListener: function removeEventListener(name, fn) {},\n\n history: {\n get entries() {\n return stack;\n },\n get index() {\n return index;\n },\n get state() {\n return states[index];\n },\n pushState: function pushState(state, _, uri) {\n var _uri$split = uri.split(\"?\"),\n pathname = _uri$split[0],\n _uri$split$ = _uri$split[1],\n search = _uri$split$ === undefined ? \"\" : _uri$split$;\n\n index++;\n stack.push({ pathname: pathname, search: search.length ? \"?\" + search : search });\n states.push(state);\n },\n replaceState: function replaceState(state, _, uri) {\n var _uri$split2 = uri.split(\"?\"),\n pathname = _uri$split2[0],\n _uri$split2$ = _uri$split2[1],\n search = _uri$split2$ === undefined ? \"\" : _uri$split2$;\n\n stack[index] = { pathname: pathname, search: search };\n states[index] = state;\n },\n go: function go(to) {\n var newIndex = index + to;\n\n if (newIndex < 0 || newIndex > states.length - 1) {\n return;\n }\n\n index = newIndex;\n }\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// global history - uses window.history as the source if available, otherwise a\n// memory history\nvar canUseDOM = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nvar getSource = function getSource() {\n return canUseDOM ? window : createMemorySource();\n};\n\nvar globalHistory = createHistory(getSource());\nvar navigate = globalHistory.navigate;\n\n////////////////////////////////////////////////////////////////////////////////\n\nexport { globalHistory, navigate, createHistory, createMemorySource };","import memoize from '@emotion/memoize';\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|inert|itemProp|itemScope|itemType|itemID|itemRef|on|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar index = memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\nexport default index;","module.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjAuMywgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzNSAyNyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzUgMjc7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojRkZGRkZGO30KPC9zdHlsZT4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTE3LDcuMmwwLjEsMS4ybC0xLjMtMC4xYy00LjYtMC41LTguNi0yLjQtMTItNS41TDIuMSwxLjFMMS43LDIuM0MwLjgsNC44LDEuMyw3LjUsMy4yLDkuM2MxLDEsMC44LDEuMS0xLDAuNQoJQzEuNyw5LjcsMS4xLDkuNSwxLjEsOS42QzAuOSw5LjgsMS41LDExLjksMiwxMi44YzAuNywxLjIsMiwyLjQsMy41LDMuMWwxLjIsMC41bC0xLjUsMGMtMS40LDAtMS41LDAtMS4zLDAuNQoJYzAuNSwxLjUsMi41LDMuMiw0LjcsMy45bDEuNiwwLjVsLTEuNCwwLjhjLTIsMS4xLTQuNCwxLjctNi44LDEuOEMwLjksMjMuOSwwLDI0LDAsMjQuMWMwLDAuMiwzLjEsMS42LDQuOSwyLjEKCWM1LjQsMS41LDExLjgsMC45LDE2LjYtMS44YzMuNC0xLjksNi44LTUuNiw4LjQtOS4yYzAuOS0xLjksMS43LTUuNSwxLjctNy4xYzAtMS4xLDAuMS0xLjIsMS41LTIuNmMwLjgtMC44LDEuNi0xLjYsMS44LTEuOAoJYzAuMy0wLjUsMC4yLTAuNS0xLjEsMGMtMi4xLDAuNy0yLjUsMC42LTEuNC0wLjVjMC44LTAuOCwxLjctMi4xLDEuNy0yLjVjMC0wLjEtMC40LDAtMC44LDAuM2MtMC41LDAuMi0xLjUsMC42LTIuMiwwLjhsLTEuNCwwLjQKCWwtMS4yLTAuOGMtMC43LTAuNC0xLjYtMC45LTIuMS0xYy0xLjMtMC4zLTMuMy0wLjMtNC40LDAuMUMxOC44LDEuNCwxNi44LDQuMiwxNyw3LjJ6Ii8+Cjwvc3ZnPgo=\"","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nvar _gatsby = require(\"gatsby\");\n\nvar _catchLinks = _interopRequireDefault(require(\"./catch-links\"));\n\nexports.onClientEntry = function (_, pluginOptions) {\n if (pluginOptions === void 0) {\n pluginOptions = {};\n }\n\n (0, _catchLinks.default)(window, pluginOptions, function (href) {\n (0, _gatsby.navigate)(href);\n });\n};","import React, { createContext, useContext } from \"react\"\n\nconst GatsbyMDXScopeContext = createContext({})\n\nexport const useMDXScope = scope => {\n const contextScope = useContext(GatsbyMDXScopeContext)\n return scope || contextScope\n}\n\nexport const MDXScopeProvider = ({ __mdxScope, children }) =>\n React.createElement(\n GatsbyMDXScopeContext.Provider,\n { value: __mdxScope },\n children\n )\n","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread;","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","\"use strict\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n}\n\nvar React = require(\"react\");\n\nvar PropTypes = require(\"prop-types\");\n\nvar ALL_INITIALIZERS = [];\nvar READY_INITIALIZERS = [];\n\nfunction isWebpackReady(getModuleIds) {\n if ((typeof __webpack_modules__ === \"undefined\" ? \"undefined\" : _typeof(__webpack_modules__)) !== \"object\") {\n return false;\n }\n\n return getModuleIds().every(function (moduleId) {\n return typeof moduleId !== \"undefined\" && typeof __webpack_modules__[moduleId] !== \"undefined\";\n });\n}\n\nfunction load(loader) {\n var promise = loader();\n var state = {\n loading: true,\n loaded: null,\n error: null\n };\n state.promise = promise.then(function (loaded) {\n state.loading = false;\n state.loaded = loaded;\n return loaded;\n }).catch(function (err) {\n state.loading = false;\n state.error = err;\n throw err;\n });\n return state;\n}\n\nfunction loadMap(obj) {\n var state = {\n loading: false,\n loaded: {},\n error: null\n };\n var promises = [];\n\n try {\n Object.keys(obj).forEach(function (key) {\n var result = load(obj[key]);\n\n if (!result.loading) {\n state.loaded[key] = result.loaded;\n state.error = result.error;\n } else {\n state.loading = true;\n }\n\n promises.push(result.promise);\n result.promise.then(function (res) {\n state.loaded[key] = res;\n }).catch(function (err) {\n state.error = err;\n });\n });\n } catch (err) {\n state.error = err;\n }\n\n state.promise = Promise.all(promises).then(function (res) {\n state.loading = false;\n return res;\n }).catch(function (err) {\n state.loading = false;\n throw err;\n });\n return state;\n}\n\nfunction resolve(obj) {\n return obj && obj.__esModule ? obj.default : obj;\n}\n\nfunction render(loaded, props) {\n return React.createElement(resolve(loaded), props);\n}\n\nfunction createLoadableComponent(loadFn, options) {\n var _class, _temp;\n\n if (!options.loading) {\n throw new Error(\"react-loadable requires a `loading` component\");\n }\n\n var opts = Object.assign({\n loader: null,\n loading: null,\n delay: 200,\n timeout: null,\n render: render,\n webpack: null,\n modules: null\n }, options);\n var res = null;\n\n function init() {\n if (!res) {\n res = loadFn(opts.loader);\n }\n\n return res.promise;\n }\n\n ALL_INITIALIZERS.push(init);\n\n if (typeof opts.webpack === \"function\") {\n READY_INITIALIZERS.push(function () {\n if (isWebpackReady(opts.webpack)) {\n return init();\n }\n });\n }\n\n return _temp = _class = function (_React$Component) {\n _inherits(LoadableComponent, _React$Component);\n\n function LoadableComponent(props) {\n _classCallCheck(this, LoadableComponent);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props));\n\n _this.retry = function () {\n _this.setState({\n error: null,\n loading: true,\n timedOut: false\n });\n\n res = loadFn(opts.loader);\n\n _this._loadModule();\n };\n\n init();\n _this.state = {\n error: res.error,\n pastDelay: false,\n timedOut: false,\n loading: res.loading,\n loaded: res.loaded\n };\n return _this;\n }\n\n LoadableComponent.preload = function preload() {\n return init();\n };\n\n LoadableComponent.prototype.componentWillMount = function componentWillMount() {\n this._mounted = true;\n\n this._loadModule();\n };\n\n LoadableComponent.prototype._loadModule = function _loadModule() {\n var _this2 = this;\n\n if (this.context.loadable && Array.isArray(opts.modules)) {\n opts.modules.forEach(function (moduleName) {\n _this2.context.loadable.report(moduleName);\n });\n }\n\n if (!res.loading) {\n return;\n }\n\n if (typeof opts.delay === \"number\") {\n if (opts.delay === 0) {\n this.setState({\n pastDelay: true\n });\n } else {\n this._delay = setTimeout(function () {\n _this2.setState({\n pastDelay: true\n });\n }, opts.delay);\n }\n }\n\n if (typeof opts.timeout === \"number\") {\n this._timeout = setTimeout(function () {\n _this2.setState({\n timedOut: true\n });\n }, opts.timeout);\n }\n\n var update = function update() {\n if (!_this2._mounted) {\n return;\n }\n\n _this2.setState({\n error: res.error,\n loaded: res.loaded,\n loading: res.loading\n });\n\n _this2._clearTimeouts();\n };\n\n res.promise.then(function () {\n update();\n }).catch(function (err) {\n update();\n });\n };\n\n LoadableComponent.prototype.componentWillUnmount = function componentWillUnmount() {\n this._mounted = false;\n\n this._clearTimeouts();\n };\n\n LoadableComponent.prototype._clearTimeouts = function _clearTimeouts() {\n clearTimeout(this._delay);\n clearTimeout(this._timeout);\n };\n\n LoadableComponent.prototype.render = function render() {\n if (this.state.loading || this.state.error) {\n return React.createElement(opts.loading, {\n isLoading: this.state.loading,\n pastDelay: this.state.pastDelay,\n timedOut: this.state.timedOut,\n error: this.state.error,\n retry: this.retry\n });\n } else if (this.state.loaded) {\n return opts.render(this.state.loaded, this.props);\n } else {\n return null;\n }\n };\n\n return LoadableComponent;\n }(React.Component), _class.contextTypes = {\n loadable: PropTypes.shape({\n report: PropTypes.func.isRequired\n })\n }, _temp;\n}\n\nfunction Loadable(opts) {\n return createLoadableComponent(load, opts);\n}\n\nfunction LoadableMap(opts) {\n if (typeof opts.render !== \"function\") {\n throw new Error(\"LoadableMap requires a `render(loaded, props)` function\");\n }\n\n return createLoadableComponent(loadMap, opts);\n}\n\nLoadable.Map = LoadableMap;\n\nvar Capture = function (_React$Component2) {\n _inherits(Capture, _React$Component2);\n\n function Capture() {\n _classCallCheck(this, Capture);\n\n return _possibleConstructorReturn(this, _React$Component2.apply(this, arguments));\n }\n\n Capture.prototype.getChildContext = function getChildContext() {\n return {\n loadable: {\n report: this.props.report\n }\n };\n };\n\n Capture.prototype.render = function render() {\n return React.Children.only(this.props.children);\n };\n\n return Capture;\n}(React.Component);\n\nCapture.propTypes = {\n report: PropTypes.func.isRequired\n};\nCapture.childContextTypes = {\n loadable: PropTypes.shape({\n report: PropTypes.func.isRequired\n }).isRequired\n};\nLoadable.Capture = Capture;\n\nfunction flushInitializers(initializers) {\n var promises = [];\n\n while (initializers.length) {\n var init = initializers.pop();\n promises.push(init());\n }\n\n return Promise.all(promises).then(function () {\n if (initializers.length) {\n return flushInitializers(initializers);\n }\n });\n}\n\nLoadable.preloadAll = function () {\n return new Promise(function (resolve, reject) {\n flushInitializers(ALL_INITIALIZERS).then(resolve, reject);\n });\n};\n\nLoadable.preloadReady = function () {\n return new Promise(function (resolve, reject) {\n // We always will resolve, errors should be handled within loading UIs.\n flushInitializers(READY_INITIALIZERS).then(resolve, resolve);\n });\n};\n\nmodule.exports = Loadable;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollHandler = exports.ScrollContext = void 0;\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _sessionStorage = require(\"./session-storage\");\n\nvar ScrollContext = /*#__PURE__*/React.createContext(new _sessionStorage.SessionStorage());\nexports.ScrollContext = ScrollContext;\nScrollContext.displayName = \"GatsbyScrollContext\";\n\nvar ScrollHandler = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollHandler, _React$Component);\n\n function ScrollHandler() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this._stateStorage = new _sessionStorage.SessionStorage();\n\n _this.scrollListener = function () {\n var key = _this.props.location.key;\n\n if (key) {\n _this._stateStorage.save(_this.props.location, key, window.scrollY);\n }\n };\n\n _this.windowScroll = function (position, prevProps) {\n if (_this.shouldUpdateScroll(prevProps, _this.props)) {\n window.scrollTo(0, position);\n }\n };\n\n _this.scrollToHash = function (hash, prevProps) {\n var node = document.getElementById(hash.substring(1));\n\n if (node && _this.shouldUpdateScroll(prevProps, _this.props)) {\n node.scrollIntoView();\n }\n };\n\n _this.shouldUpdateScroll = function (prevRouterProps, routerProps) {\n var shouldUpdateScroll = _this.props.shouldUpdateScroll;\n\n if (!shouldUpdateScroll) {\n return true;\n } // Hack to allow accessing this._stateStorage.\n\n\n return shouldUpdateScroll.call((0, _assertThisInitialized2.default)(_this), prevRouterProps, routerProps);\n };\n\n return _this;\n }\n\n var _proto = ScrollHandler.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollListener);\n var scrollPosition;\n var _this$props$location = this.props.location,\n key = _this$props$location.key,\n hash = _this$props$location.hash;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n if (scrollPosition) {\n this.windowScroll(scrollPosition, undefined);\n } else if (hash) {\n this.scrollToHash(decodeURI(hash), undefined);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollListener);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this$props$location2 = this.props.location,\n hash = _this$props$location2.hash,\n key = _this$props$location2.key;\n var scrollPosition;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n /** There are two pieces of state: the browser url and\n * history state which keeps track of scroll position\n * Native behaviour prescribes that we ought to restore scroll position\n * when a user navigates back in their browser (this is the `POP` action)\n * Currently, reach router has a bug that prevents this at https://github.com/reach/router/issues/228\n * So we _always_ stick to the url as a source of truth — if the url\n * contains a hash, we scroll to it\n */\n\n\n if (hash) {\n this.scrollToHash(decodeURI(hash), prevProps);\n } else {\n this.windowScroll(scrollPosition, prevProps);\n }\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(ScrollContext.Provider, {\n value: this._stateStorage\n }, this.props.children);\n };\n\n return ScrollHandler;\n}(React.Component);\n\nexports.ScrollHandler = ScrollHandler;\nScrollHandler.propTypes = {\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired,\n location: _propTypes.default.object.isRequired\n};","export const onServiceWorkerUpdateReady = () => {\n const answer = window.confirm(\n `This tutorial has been updated. ` +\n `Reload to display the latest version?`\n )\n if (answer === true) {\n window.location.reload()\n }\n}","//\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n\n if (ret !== void 0) {\n return !!ret;\n }\n\n if (objA === objB) {\n return true;\n }\n\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB); // Test for A's keys different from B.\n\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n\n if (!bHasOwnProperty(key)) {\n return false;\n }\n\n var valueA = objA[key];\n var valueB = objB[key];\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n\n if (ret === false || ret === void 0 && valueA !== valueB) {\n return false;\n }\n }\n\n return true;\n};","import React, { createElement } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { publicLoader } from \"./loader\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport { grabMatchParams } from \"./find-path\"\n\n// Renders page\nclass PageRenderer extends React.Component {\n render() {\n const props = {\n ...this.props,\n params: {\n ...grabMatchParams(this.props.location.pathname),\n ...this.props.pageResources.json.pageContext.__params,\n },\n pathContext: this.props.pageContext,\n }\n\n const [replacementElement] = apiRunner(`replaceComponentRenderer`, {\n props: this.props,\n loader: publicLoader,\n })\n\n const pageElement =\n replacementElement ||\n createElement(this.props.pageResources.component, {\n ...props,\n key: this.props.path || this.props.pageResources.page.path,\n })\n\n const wrappedPage = apiRunner(\n `wrapPageElement`,\n { element: pageElement, props },\n pageElement,\n ({ result }) => {\n return { element: result, props }\n }\n ).pop()\n\n return wrappedPage\n }\n}\n\nPageRenderer.propTypes = {\n location: PropTypes.object.isRequired,\n pageResources: PropTypes.object.isRequired,\n data: PropTypes.object,\n pageContext: PropTypes.object.isRequired,\n}\n\nexport default PageRenderer\n","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles;","import * as React from 'react';\nexport default {\n React\n};","import arrayWithoutHoles from \"@babel/runtime/helpers/esm/arrayWithoutHoles\";\nimport iterableToArray from \"@babel/runtime/helpers/esm/iterableToArray\";\nimport unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nimport nonIterableSpread from \"@babel/runtime/helpers/esm/nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import invariant from \"invariant\";\n\n////////////////////////////////////////////////////////////////////////////////\n// startsWith(string, search) - Check if `string` starts with `search`\nvar startsWith = function startsWith(string, search) {\n return string.substr(0, search.length) === search;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// pick(routes, uri)\n//\n// Ranks and picks the best route to match. Each segment gets the highest\n// amount of points, then the type of segment gets an additional amount of\n// points where\n//\n// static > dynamic > splat > root\n//\n// This way we don't have to worry about the order of our routes, let the\n// computers do it.\n//\n// A route looks like this\n//\n// { path, default, value }\n//\n// And a returned match looks like:\n//\n// { route, params, uri }\n//\n// I know, I should use TypeScript not comments for these types.\nvar pick = function pick(routes, uri) {\n var match = void 0;\n var default_ = void 0;\n\n var _uri$split = uri.split(\"?\"),\n uriPathname = _uri$split[0];\n\n var uriSegments = segmentize(uriPathname);\n var isRootUri = uriSegments[0] === \"\";\n var ranked = rankRoutes(routes);\n\n for (var i = 0, l = ranked.length; i < l; i++) {\n var missed = false;\n var route = ranked[i].route;\n\n if (route.default) {\n default_ = {\n route: route,\n params: {},\n uri: uri\n };\n continue;\n }\n\n var routeSegments = segmentize(route.path);\n var params = {};\n var max = Math.max(uriSegments.length, routeSegments.length);\n var index = 0;\n\n for (; index < max; index++) {\n var routeSegment = routeSegments[index];\n var uriSegment = uriSegments[index];\n\n if (isSplat(routeSegment)) {\n // Hit a splat, just grab the rest, and return a match\n // uri: /files/documents/work\n // route: /files/*\n var param = routeSegment.slice(1) || \"*\";\n params[param] = uriSegments.slice(index).map(decodeURIComponent).join(\"/\");\n break;\n }\n\n if (uriSegment === undefined) {\n // URI is shorter than the route, no match\n // uri: /users\n // route: /users/:userId\n missed = true;\n break;\n }\n\n var dynamicMatch = paramRe.exec(routeSegment);\n\n if (dynamicMatch && !isRootUri) {\n var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;\n !matchIsNotReserved ? process.env.NODE_ENV !== \"production\" ? invariant(false, \" dynamic segment \\\"\" + dynamicMatch[1] + \"\\\" is a reserved name. Please use a different name in path \\\"\" + route.path + \"\\\".\") : invariant(false) : void 0;\n var value = decodeURIComponent(uriSegment);\n params[dynamicMatch[1]] = value;\n } else if (routeSegment !== uriSegment) {\n // Current segments don't match, not dynamic, not splat, so no match\n // uri: /users/123/settings\n // route: /users/:id/profile\n missed = true;\n break;\n }\n }\n\n if (!missed) {\n match = {\n route: route,\n params: params,\n uri: \"/\" + uriSegments.slice(0, index).join(\"/\")\n };\n break;\n }\n }\n\n return match || default_ || null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// match(path, uri) - Matches just one path to a uri, also lol\nvar match = function match(path, uri) {\n return pick([{ path: path }], uri);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// resolve(to, basepath)\n//\n// Resolves URIs as though every path is a directory, no files. Relative URIs\n// in the browser can feel awkward because not only can you be \"in a directory\"\n// you can be \"at a file\", too. For example\n//\n// browserSpecResolve('foo', '/bar/') => /bar/foo\n// browserSpecResolve('foo', '/bar') => /foo\n//\n// But on the command line of a file system, it's not as complicated, you can't\n// `cd` from a file, only directories. This way, links have to know less about\n// their current path. To go deeper you can do this:\n//\n// \n// // instead of\n// \n//\n// Just like `cd`, if you want to go deeper from the command line, you do this:\n//\n// cd deeper\n// # not\n// cd $(pwd)/deeper\n//\n// By treating every path as a directory, linking to relative paths should\n// require less contextual information and (fingers crossed) be more intuitive.\nvar resolve = function resolve(to, base) {\n // /foo/bar, /baz/qux => /foo/bar\n if (startsWith(to, \"/\")) {\n return to;\n }\n\n var _to$split = to.split(\"?\"),\n toPathname = _to$split[0],\n toQuery = _to$split[1];\n\n var _base$split = base.split(\"?\"),\n basePathname = _base$split[0];\n\n var toSegments = segmentize(toPathname);\n var baseSegments = segmentize(basePathname);\n\n // ?a=b, /users?b=c => /users?a=b\n if (toSegments[0] === \"\") {\n return addQuery(basePathname, toQuery);\n }\n\n // profile, /users/789 => /users/789/profile\n if (!startsWith(toSegments[0], \".\")) {\n var pathname = baseSegments.concat(toSegments).join(\"/\");\n return addQuery((basePathname === \"/\" ? \"\" : \"/\") + pathname, toQuery);\n }\n\n // ./ /users/123 => /users/123\n // ../ /users/123 => /users\n // ../.. /users/123 => /\n // ../../one /a/b/c/d => /a/b/one\n // .././one /a/b/c/d => /a/b/c/one\n var allSegments = baseSegments.concat(toSegments);\n var segments = [];\n for (var i = 0, l = allSegments.length; i < l; i++) {\n var segment = allSegments[i];\n if (segment === \"..\") segments.pop();else if (segment !== \".\") segments.push(segment);\n }\n\n return addQuery(\"/\" + segments.join(\"/\"), toQuery);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// insertParams(path, params)\n\nvar insertParams = function insertParams(path, params) {\n var _path$split = path.split(\"?\"),\n pathBase = _path$split[0],\n _path$split$ = _path$split[1],\n query = _path$split$ === undefined ? \"\" : _path$split$;\n\n var segments = segmentize(pathBase);\n var constructedPath = \"/\" + segments.map(function (segment) {\n var match = paramRe.exec(segment);\n return match ? params[match[1]] : segment;\n }).join(\"/\");\n var _params$location = params.location;\n _params$location = _params$location === undefined ? {} : _params$location;\n var _params$location$sear = _params$location.search,\n search = _params$location$sear === undefined ? \"\" : _params$location$sear;\n\n var searchSplit = search.split(\"?\")[1] || \"\";\n constructedPath = addQuery(constructedPath, query, searchSplit);\n return constructedPath;\n};\n\nvar validateRedirect = function validateRedirect(from, to) {\n var filter = function filter(segment) {\n return isDynamic(segment);\n };\n var fromString = segmentize(from).filter(filter).sort().join(\"/\");\n var toString = segmentize(to).filter(filter).sort().join(\"/\");\n return fromString === toString;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar paramRe = /^:(.+)/;\n\nvar SEGMENT_POINTS = 4;\nvar STATIC_POINTS = 3;\nvar DYNAMIC_POINTS = 2;\nvar SPLAT_PENALTY = 1;\nvar ROOT_POINTS = 1;\n\nvar isRootSegment = function isRootSegment(segment) {\n return segment === \"\";\n};\nvar isDynamic = function isDynamic(segment) {\n return paramRe.test(segment);\n};\nvar isSplat = function isSplat(segment) {\n return segment && segment[0] === \"*\";\n};\n\nvar rankRoute = function rankRoute(route, index) {\n var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {\n score += SEGMENT_POINTS;\n if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;\n return score;\n }, 0);\n return { route: route, score: score, index: index };\n};\n\nvar rankRoutes = function rankRoutes(routes) {\n return routes.map(rankRoute).sort(function (a, b) {\n return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;\n });\n};\n\nvar segmentize = function segmentize(uri) {\n return uri\n // strip starting/ending slashes\n .replace(/(^\\/+|\\/+$)/g, \"\").split(\"/\");\n};\n\nvar addQuery = function addQuery(pathname) {\n for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n query[_key - 1] = arguments[_key];\n }\n\n query = query.filter(function (q) {\n return q && q.length > 0;\n });\n return pathname + (query && query.length > 0 ? \"?\" + query.join(\"&\") : \"\");\n};\n\nvar reservedNames = [\"uri\", \"path\"];\n\n/**\n * Shallow compares two objects.\n * @param {Object} obj1 The first object to compare.\n * @param {Object} obj2 The second object to compare.\n */\nvar shallowCompare = function shallowCompare(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {\n return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];\n });\n};\n\n////////////////////////////////////////////////////////////////////////////////\nexport { startsWith, pick, match, resolve, insertParams, validateRedirect, shallowCompare };","module.exports = [{\n plugin: require('../node_modules/gatsby-plugin-layout/gatsby-browser.js'),\n options: {\"plugins\":[],\"component\":\"/home/t42/Documents/programming/Projects/OT_Guide/ote-guide_2.0/src/templates/docs.js\"},\n },{\n plugin: require('../node_modules/gatsby-plugin-catch-links/gatsby-browser.js'),\n options: {\"plugins\":[]},\n },{\n plugin: require('../node_modules/gatsby-plugin-mdx/gatsby-browser.js'),\n options: {\"plugins\":[],\"gatsbyRemarkPlugins\":[{\"resolve\":\"gatsby-remark-images\",\"options\":{\"maxWidth\":1035,\"sizeByPixelDensity\":true}},{\"resolve\":\"gatsby-remark-katex\",\"options\":{\"strict\":\"ignore\"}},{\"resolve\":\"gatsby-remark-copy-linked-files\"},{\"resolve\":\"gatsby-remark-acronyms\",\"options\":{\"acronyms\":{\"2Ltr\":\"2-Letter\",\"Blk\":\"Block\",\"Det\":\"Detachment\",\"Stan/Eval\":\"Standardization and Evaluation\",\"3DELRR\":\"Three Dimensional Expeditionary Long Range Radar\",\"3PS\":\"Third Party Source\",\"AAS\":\"Advisory and Assistance Services\",\"A3M\":\"Air Force and Army Anti-Jam Modem\",\"AA\":\"Adversarial Assessment\",\"AAIP\":\"Aircraft Availability Improvement Program\",\"AAR\":\"After-Action Review / Report\",\"AARGM\":\"Advanced Anti-Radiation Guided Missile\",\"AARI\":\"Air-to-air Range Infrastructure\",\"ABSD\":\"Airborne Strategic Deterrence\",\"AC\":\"Alternating Current\",\"ACAT\":\"Acquisition Category\",\"ACC\":\"Air Combat Command\",\"ACCM\":\"Alternative Compensatory Control Measure\",\"ACE\":\"Acquisition Center of Excellence\",\"ACES\":\"Automated Civil Engineer System\",\"ACPAT\":\"Air Force C4I Program Assessment Tool\",\"ACPINS\":\"Automated Computer Program Identification Number System\",\"ACPO\":\"Acquisition Chief Process Office\",\"ACTD\":\"Advanced Concept Technology Demonstration\",\"ACWP\":\"Actual Cost Work Performed\",\"ADM\":\"Acquisition Decision Memorandum\",\"ADS\":\"Advanced Distributed Simulation\",\"AEC\":\"United States Army Evaluation Center\",\"AECO\":\"Advance Engineering Change Order\",\"AECS\":\"Advanced Entry Control System OR AFOTEC Electronic Coordination System\",\"AEF\":\"Air and Space Expeditionary Force\",\"AEHF\":\"Advanced Extremely High Frequency\",\"AEP\":\"Accrued Expenditures Paid\",\"AESO\":\"Advance Engineering Supplemental Order\",\"AETC\":\"Air Education and Training Command\",\"AETF\":\"Army Evaluation Task Force\",\"AEU\":\"Accrued Expenditures Unpaid\",\"AF GCIC\":\"Air Force Global Cyberspace Integration Center\",\"AFMOASP\":\"Air Force Management and Oversight of Acquisition Services Process\",\"AF\":\"(US) Air Force\",\"AF/A10\":\"Assistant Chief of Staff for Strategic Deterrence and Nuclear Integration\",\"AF/A2\":\"Deputy Chief of Staff, Intelligence, Surveillance and Reconnaissance\",\"AF/A3/5\":\"Deputy Chief of Staff, Operations, Plans, and Requirements\",\"AF/A4/7\":\"Deputy Chief of Staff, Logistics, Installations, and Mission Support\",\"AF/A5/8\":\"HQ AF, Strategic Plans and Programs\",\"AF/A5R\":\"Air Force Requirements Office\",\"AF/A6\":\"Chief of Warfighting Integration and Chief Information Officer (CIO)\",\"AF/A8\":\"Headquarters, Air Force Strategic Plans and Programs\",\"AF/CC\":\"Chief of Staff, United States Air Force\",\"AF/CV\":\"Vice Chief of Staff, United States Air Force\",\"AF/SE\":\"Air Force Chief of Safety\",\"AF/TE\":\"Headquarters Air Force Test and Evaluation Directorate\",\"AFAE\":\"Air Force Acquisition Executive\",\"AFAMS\":\"Air Force Agency for Modeling and Simulation\",\"AFB\":\"Air Force Base\",\"AFC2IC\":\"Air Force Command & Control Integration Center\",\"AFC2ISRC\":\"Air Force Command and Control and Intelligence, Surveillance, and Reconnaissance Center (disestablished)\",\"AFCA\":\"Air Force Communications Agency\",\"AFCAA\":\"Air Force Cost Analysis Agency\",\"AFCAP\":\"Air Force Certification and Accreditation Program\",\"AFCD\":\"Air Force Capabilities Document\",\"AFCEC\":\"Air Force Civil Engineer Center\",\"AFCESA\":\"Air Force Civil Engineer Support Agency\",\"AFDD\":\"Air Force Doctrine Document\",\"AFDPO\":\"Air Force Departmental Publishing Office\",\"AF-EA\":\"Air Force Enterprise Architecture\",\"AFEE\":\"Air Force Element of Expense\",\"AFEWES\":\"Air Force Electronic Warfare Simulator\",\"AFFARS\":\"Air Force Federal Acquisition Regulation Supplement\",\"AFFMA\":\"Air Force Frequency Management Agency\",\"AFGK\":\"Air Force Gatekeeper\",\"AFGLSC\":\"Air Force Global Logistics Support Center\",\"AFGSC\":\"Air Force Global Strike Command\",\"AFI\":\"Air Force Instruction\",\"AFICE\":\"Air Force Integrated Collaborative Environment\",\"AFIOC\":\"Air Force Information Operations Center\",\"AFIPPS\":\"Air Force Integrated Personnel and Pay System\",\"AFIT\":\"Air Force Institute of Technology\",\"AFIWC\":\"Air Force Information Warfare Center (disestablished)\",\"AFJO\":\"Air Force Joint Test Program Office\",\"AFKN\":\"Air Force Knowledge Now\",\"AFL2P\":\"Air Force Lessons Learned Program\",\"AFLCMC\":\"Air Force Life Cycle Management Center\",\"AFLIRP\":\"Air Force Lesson Issue Resolution Program\",\"AFMAN\":\"Air Force Manual\",\"AFMC\":\"Air Force Material Command\",\"AFMD\":\"Air Force Mission Directive\",\"AFMETCAL\":\"Air Force Metrology and Calibration\",\"AFMSRR\":\"Air Force Modeling and Simulation Resource Repository\",\"AFNET\":\"Air Force Network\",\"AFNIC\":\"Air Force Network Integration Center\",\"AF-NNSA\":\"Air Force-National Nuclear Security Administration\",\"AFNWC\":\"Air Force Nuclear Weapons Center\",\"AFOSH\":\"Air Force Occupational and Environmental Safety, Fire Protection, and Health OR Air Force Office of Safety and Health\",\"AFOSI\":\"Air Force Office of Special Investigations\",\"AFOTEC\":\"Air Force Operational Test and Evaluation Center\",\"AFOTEC/A-1\":\"Manpower and Personnel Directorate\",\"AFOTEC/A-1T\":\"Training Division\",\"AFOTEC/A-1W\":\"Manpower and Personnel (Operations) Division\",\"AFOTEC/A-2/9\":\"Intelligence, Analyses, and Assessments Directorate\",\"AFOTEC/A-2N\":\"Intelligence Division\",\"AFOTEC/A-3\":\"Operations Directorate\",\"AFOTEC/A-3C\":\"Cyber Strategic Evaluation Division\",\"AFOTEC/A-3E\":\"Operations Mission Support Division\",\"AFOTEC/A-3F\":\"Test Operations Division\",\"AFOTEC/A-3I\":\"Cyberspace Test Division\",\"AFOTEC/A-3O\":\"Test Design Operations Division\",\"AFOTEC/A-3Z\":\"Special Access Programs Division\",\"AFOTEC/A-4/7\":\"Installations and Mission Support Directorate\",\"AFOTEC/A-4F\":\"Logistics and Facilities Management Division\",\"AFOTEC/A-5/8\":\"Plans and Programs Directorate\",\"AFOTEC/A-5R\":\"Test Infrastructure Division\",\"AFOTEC/A-6\":\"Communications and Information Directorate\",\"AFOTEC/A-6O\":\"Cyber Operations Division\",\"AFOTEC/A-6X\":\"Plans and Resources Division\",\"AFOTEC/A-6Z\":\"Special Access Programs Information Technology Division\",\"AFOTEC/A-7K\":\"Contracting Division\",\"AFOTEC/A-7R\":\"Financial Resources Division\",\"AFOTEC/A-8P\":\"Programming Division\",\"AFOTEC/A-8R\":\"Long Range Investments Division\",\"AFOTEC/A-8X\":\"Strategic Plans and Policy Division\",\"AFOTEC/A-9A\":\"Analysis and Assessments Division\",\"AFOTEC/A-9I\":\"Analysis Foundation and Integration Division\",\"AFOTEC/A-9X\":\"Methods and Tools Division\",\"AFOTEC/CA\":\"Technical Advisor\",\"AFOTEC/CC\":\"AFOTEC Commander\",\"AFOTEC/CCE\":\"Executive Officer\",\"AFOTEC/CCJ\":\"Graphics\",\"AFOTEC/CCP\":\"Protocol\",\"AFOTEC/CCS\":\"Secretary\",\"AFOTEC/CCX\":\"Commander’s Action Group\",\"AFOTEC/CEM\":\"Chief Enlisted Manager\",\"AFOTEC/CS\":\"Command Staff\",\"AFOTEC/CV\":\"Vice Commander\",\"AFOTEC/DS\":\"Director of Staff\",\"AFOTEC/ED\":\"Executive Director\",\"AFOTEC/HO\":\"History Office\",\"AFOTEC/IGI\":\"Inspector General (Inspections)\",\"AFOTEC/IP\":\"Information Protection\",\"AFOTEC/LC\":\"Legal Council\",\"AFOTEC/PA\":\"Public Affairs\",\"AFOTEC/SE\":\"Safety\",\"AFOTECI\":\"AFOTEC Instruction\",\"AFOTECPAM\":\"AFOTEC Pamphlet\",\"AFOTTP\":\"Air Force Operational Tactics, Techniques, and Procedures\",\"AFPAM\":\"Air Force Pamphlet\",\"AFPD\":\"Air Force Policy Directive\",\"AFPEO/CM\":\"Air Force Program Executive Officer/Combat and Mission Support\",\"AFRB\":\"Air Force Review Board\",\"AFRC\":\"Air Force Reserve Command\",\"AFRIMS RDS\":\"Air Force Information Management System Records Disposition Schedule\",\"AFRIMS\":\"Air Force Records Information Management System\",\"AFRL\":\"Air Force Research Laboratory\",\"AFROC\":\"Air Force Requirements Oversight Council\",\"AFROCC\":\"Air Force Requirements for Operational Capabilities Council\",\"AFROCM\":\"Air Force Requirements Oversight Council Memorandum\",\"AFRRG\":\"Air Force Requirements Review Group\",\"AFSC\":\"Air Force Specialty Code\",\"AFSEO\":\"Air Force SEEK EAGLE Office\",\"AFSFC\":\"Air Force Security Forces Center\",\"AFSIT\":\"Air Force System Interoperability Testing\",\"AFSOC\":\"Air Force Special Operations Command\",\"AFSPC\":\"Air Force Space Command\",\"AFSSI\":\"Air Force Systems Security Instruction\",\"AFTC\":\"Air Force Test Center\",\"AGL\":\"Above Ground Level\",\"AGM\":\"Air Ground Missile\",\"AGR\":\"Active Guard and Reserve\",\"AIM\":\"Air Intercept Missile\",\"AIM-120 Adv EPIP\":\"AIM-120C Advanced Electronic Protection Improvement Program\",\"AIM 120D SIP-3\":\"AIM-120D System Improvement Program\",\"AIP\":\"Aircraft Information Program\",\"AIR\":\"Acquisition Information Repository\",\"AIS\":\"Automated Information Systems\",\"AISR\":\"Airborne Intelligence, Surveillance, and Reconnaissance\",\"AIT\":\"Automatic Identification Technology\",\"ALC\":\"Air Logistics Center\",\"ALCM\":\"Air Launched Cruise Missile\",\"ALCS-R\":\"Airborne Launch Control System Replacement\",\"ALDT\":\"Administrative and Logistics Delay\",\"ALIS\":\"Autonomic Logistics Information System (F-35)\",\"AMARG\":\"Aerospace Maintenance and Regeneration Group\",\"AMAS\":\"AFOTEC Mission Applications Suite\",\"AMC\":\"Air Mobility Command\",\"AME\":\"Alternate Mission Equipment\",\"AML\":\"Acquisition Master List\",\"AMP\":\"C-130 Avionics Modernization Program\",\"AMSAA\":\"Army Materiel Systems Analysis Activity\",\"AN/PRC\":\"Army Navy/Portable Radio Communication\",\"ANG\":\"Air National Guard\",\"AO\":\"Area of Operations or Authorizing Official or Action Officer\",\"Ao\":\"Operational Availability\",\"AoA\":\"Analysis of Alternatives\",\"AOC WS\":\"Air Operations Center Weapon System\",\"AOTR\":\"Assessment of Operational Test Readiness\",\"APA\":\"Additional Performance Attribute\",\"APAT\":\"Acquisition Process Architecture Team\",\"APB\":\"Acquisition Program Baseline\",\"APDP\":\"Acquisition Professional Development Program\",\"APKWS\":\"Advanced Precision Kill Weapon System\",\"APM\":\"Acquisition Process Model\",\"APML\":\"Acquisition Program Master List\",\"APPG\":\"Annual Planning and Programming Guidance\",\"APSR\":\"Accountable Property Systems of Record\",\"APT\":\"Advanced Pilot Training\",\"APUC\":\"Average Unit Procurement Cost\",\"AR\":\"Analysis and Reporting Toolset OR Army Regulation\",\"ARM\":\"Anti-Radiation Missile\",\"ARRW\":\"Air-Launched Rapid Response Weapon\",\"ART\":\"Adaptive-Relevant Test\",\"ARTS\":\"Advanced Radar Threat System\",\"AS Tool Kit\":\"Acquisition and Sustainment Tool Kit\",\"AS\":\"Acquisition Strategy\",\"ASACMS\":\"Advanced Situational Awareness Countermeasures System\",\"ASACoE\":\"Application Software Assurance Center of Excellence\",\"ASAF\":\"Assistant Secretary of the Air Force\",\"ASD\":\"Acquisition Strategy Development OR Agile Software Development OR Assist Sec of Defense\",\"ASDNII\":\"Assistant Secretary of Defense (Network and Information Integration\",\"ASIP\":\"Airborne Signals Intelligence Payload OR Aircraft Structural Integrity Program\",\"ASP\":\"Acquisition Strategy Panel\",\"ASR\":\"Acquisition and Sustainment Reviews OR Alternative Systems Review\",\"ASTK\":\"Acquisition Sustainment Tool Kit\",\"ASuW\":\"Anti-Surface Warfare\",\"AT\":\"Anti-Tamper\",\"AT&L\":\"Acquisition, Technology, and Logistics\",\"ATAPPS\":\"Automated Time Attendance and Production System\",\"ATCALS\":\"Air Traffic Control and Landing Systems\",\"ATD\":\"Advanced Technology Demonstration (or Development)\",\"ATE\":\"Automatic Test Equipment\",\"ATEC\":\"Army Test and Evaluation Command\",\"ATO\":\"Air Tasking Order OR Authority to Operate\",\"ATOS\":\"Automated Technical Orders System\",\"ATPA\":\"AFOTEC Test Program Application\",\"ATP-SE\":\"Advanced Targeting Pod-Sensor Enhancement\",\"ATS\":\"Automatic Test System\",\"ATTIC\":\"Analyst Training and Technical Information Center\",\"AUTL\":\"Army Universal Task List\",\"AV\":\"All Viewpoint\",\"AVIP\":\"Aviation Integrity Program\",\"AVPOL\":\"Aviation Petroleum, Oil, and Lubricants\",\"AWACS\":\"Airborne Warning and Control System\",\"AWBS\":\"Air Warfare Battle Shaping\",\"AWIP\":\"Advanced Weapons Integration Program\",\"B-2 DMS\":\"Defensive Management System\",\"B-2 EHF SATCOM\":\"Extremely High Frequency Satellite Communications\",\"B-52 CERP\":\"B-52 Commercial Engine Replacement Program\",\"B-52 RMP\":\"B-52 Radar Modernization Program\",\"B61 LEP\":\"B61 Life Extension Program\",\"BAA\":\"Buy American Act\",\"BBP\":\"Bullet Background Paper\",\"BC\":\"Business Case\",\"BCA\":\"Business Case Analysis\",\"BCL\":\"Business Capability Lifecycle\",\"BCS\":\"Baseline Comparison System\",\"BCS-F\":\"Battle Control System-Fixed\",\"BDA\":\"Big Data Analytics; Bomb Damage Assessment\",\"BDRSK\":\"Battle Damage Repair Spares Kit\",\"BEA\":\"Business Enterprise Architecture\",\"BES\":\"Budget Estimate Submission\",\"BFT\":\"Blue Force Tracking\",\"BISS\":\"Base and Installation Security System\",\"BLOS C2\":\"Beyond-Line-of-Sight Command and Control\",\"BLOS\":\"Beyond Line of Sight\",\"BLU\":\"Bomb, Live Unit\",\"BMC2\":\"Battle Management Command and Control Communications\",\"BMD\":\"Ballistic Missile Defense\",\"BMDS\":\"Ballistic Missile Defense System\",\"BOS\":\"Base Operating Support\",\"BPAC\":\"Budget Program Activity Code\",\"BRU\":\"Bomb Release Units\",\"BU\":\"Block Update\",\"C&A\":\"Certification and Accreditation\",\"C&L\":\"Capabilities and Limitations\",\"C&LR\":\"Capabilities and Limitations Report\",\"C2\":\"Command and Control\",\"C2AOS\":\"Command and Control Air Operations Suite\",\"C2BMC\":\"Command, Control, Battle Management, and Communications\",\"C2D2\":\"Continuous Capability Development and Delivery\",\"C2IS\":\"Command and Control Information Services\",\"C4\":\"Command, Control, Communications, and Computers\",\"C4I\":\"Command, Control, Communications, Computers, and Intelligence\",\"C4ISP\":\"Command, Control, Communication, Computers, and Intelligence Support Plan\",\"C4ISR\":\"Cmd, Control, Comm, Computers, Intel, Surveillance, and Reconnaissance\",\"CA\":\"Command Technical Advisor OR Contract Award OR Criticality Analysis\",\"CAC\":\"Common Access Card \",\"CAD\":\"Computer-Aided Design (or Drafting)\",\"CAE\":\"Component Acquisition Executive\",\"CAFTOP\":\"Comprehensive Air Force Technical Order Plan\",\"CAG\":\"Commander’s Action Group\",\"CAGE\":\"Commercial and Government Entity\",\"CAIG\":\"Cost Analysis Improvement Group\",\"CALS\":\"Common Analytical Laboratory System\",\"CAM\":\"Centralized Asset Management\",\"CAOC\":\"Coalition Air Operations Center\",\"CAP\":\"Contractor Acquired Property OR Critical Acquisition Position\",\"CAPCO\":\"Controlled Access Program Coordinating Office\",\"CAPE\":\"Cost Assessment and Program Evaluation\",\"CAPES\":\"F-16 Combat Avionics Programmed Extension Suite\",\"CARD\":\"Cost Analysis Requirements Description\",\"CASS\":\"Close Air Support System\",\"CAT\":\"Category\",\"CBA\":\"Capabilities-Based Assessment\",\"CBDP\":\"Chemical and Biological Defense Program\",\"CBM\":\"Condition-Based Maintenance Plus\",\"CBP\":\"Capability-Based Planning\",\"CBR\":\"Chemical, Biological, and Radiological\",\"CBRD\":\"Capabilities-Based Requirements Document\",\"CBRN\":\"Chemical, Biological, Radiological and Nuclear\",\"CC\":\"Commander OR Critical Component\",\"CCA\":\"Clinger-Cohen Act OR Component Cost Analysis\",\"CCaR\":\"Comprehensive Cost and Requirement System\",\"CCCA\":\"Common Core Compliance Area\",\"CCD\":\"Combat Capability Document\",\"CCDR\":\"Combatant Commander\",\"CCJO\":\"Capstone Concept for Joint Operations\",\"CCMD\":\"Combatant Command\",\"CCP\":\"Command Control Points\",\"CCPE\":\"Corrosion Control Program Executive\",\"CCR\":\"Call Completion Rate\",\"C-CS\":\"Counter-Concealment Sensing\",\"CCT\":\"Capability Collaboration Teams\",\"CCTD\":\"Concept Characterization and Technical Description\",\"CCX\":\"Commander’s Action Group Office Symbol\",\"CD\":\"Capability Director (or Directorate) OR Deputy Commander\",\"CDA\":\"Current Design Activity\",\"CDD\":\"Capability Development Document\",\"CDP\":\"Capability Definition Package\",\"CDR\":\"Critical Design Review\",\"CDRL\":\"Contract Data Requirements List\",\"CDS\":\"Cross Domain Solution\",\"CDT\":\"Chief Developmental Tester\",\"CE\":\"Civil Engineer OR Conducted Emissions\",\"CEP\":\"Circular Error Probability\",\"CERT\":\"Certification\",\"CFL\":\"Core Function Lead\",\"CFLI\":\"Core Function Lead Integrator\",\"CFMP\":\"Core Function Master Plan\",\"CFO\":\"Chief Financial Officer\",\"CFP\":\"Capabilities Focused Planning\",\"CFR\":\"Code of Federal Regulations\",\"CFSR\":\"Contract Funds Status Report\",\"CGA\":\"Capability Gap Assessment\",\"CGM\":\"Common GPS Module\",\"CI\":\"Configuration Item OR Counterintelligence\",\"CICA\":\"Competition in Contracting Act\",\"CIDAS\":\"Contamination Indicator Decontamination Assurance System\",\"CIED\":\"Counter-Improvised Explosive Device\",\"CIMB\":\"Commander’s Inspection Management Board\",\"CIO\":\"Chief Information Officer\",\"CIP\":\"Critical Intelligence Parameter\",\"CIPS\":\"Cyberspace Infrastructure Planning System\",\"CIR\":\"Capital Investment Report\",\"CISP\":\"Counterintelligence Support Plan\",\"CITE\":\"Center of Industrial and Technical Excellence\",\"CJCS\":\"Chairman, Joint Chiefs of Staff\",\"CJCSI\":\"Chairman, Joint Chief of Staff Instruction\",\"CJCSM\":\"Chairman, Joint Chiefs of Staff Manual\",\"CJR\":\"COBRA JUDY Replacement\",\"CJTF\":\"Coalition Joint Task Force\",\"CL\":\"China Lake OR Civilian Leader OR Continuous Learning\",\"CLIN\":\"Contract Line Item Number\",\"CLS\":\"Contractor Logistics Support\",\"CM\":\"Configuration Management OR Consequence Management OR Constellation Management OR Corrective Maintenance\",\"CMBRE\":\"Common Munitions BIT Reprogramming Equipment\",\"CMC\":\"C-5 Core Mission Computer and Weather Radar Program\",\"CML\":\"Capability-Mission Lattice\",\"CMMI\":\"Capability Maturity Model Integration\",\"CMP\":\"Configuration Management Plan\",\"CMRS\":\"Collaboration and Measurements Requirements Summary\",\"CNA\":\"Computer Network Attack\",\"CNEO\":\"Change Notice Engineering Order\",\"CNSSI\":\"Committee on National Security Systems (CNSS) Instruction\",\"CNWDI\":\"Critical Nuclear Weapons Design Information\",\"CO\":\"Contracting Officer\",\"COA\":\"Course of Action\",\"CoC\":\"Certificate of Compliance\",\"COCOM\":\"Combatant Command\",\"COD\":\"Capability Development Document\",\"COI\":\"Critical Operational Issue\",\"COLISEUM\":\"Community On-Line Intelligence System for End Users and Managers\",\"COMAFFOR\":\"Commander Air Force Forces\",\"COMOPTEVFOR\":\"Naval Command Operational Test and Evaluation Force\",\"COMSEC\":\"Communications Security\",\"CoN\":\"Certificate of Networthiness\",\"CONECT\":\"B-52 Combat Network Communications Technology\",\"CONEMP\":\"Concept of Employment\",\"CONOPS\":\"Concept of Operations\",\"COOP\":\"Continuity of Operations Plan\",\"COP\":\"Common Operating Picture\",\"CoP\":\"Community of Practice\",\"COR\":\"Contracting Officer’s Representative\",\"CORE\":\"Critical Operational Issues and Criteria\",\"COTF\":\"Commander, Operational Test Force (OPTEVFOR)\",\"COTS\":\"Commercial Off-the-Shelf\",\"COTT\":\"Combined Operational Test Team\",\"CPA\":\"Chairman’s Program Assessment\",\"CPAF\":\"Cost-Plus Award Fee\",\"CPARS\":\"Contractor Performance Assessment Reporting System\",\"CPCP\":\"Corrosion Prevention and Control Plan\",\"CPD\":\"Capability Production Document\",\"CPI\":\"Crash Position Indicator OR Critical Program Information\",\"CPIF\":\"Cost Plus Incentive Fee\",\"CPM\":\"Capability Portfolio Manager\",\"CPR\":\"Chairman’s Program Recommendation\",\"CR\":\"Change Request\",\"CR6\":\"Hexavalent Chromium\",\"CRA\":\"Continuing Resolution Authority OR Cost Risk Assessment OR Chairman’s Risk Assessment\",\"CRD\":\"Capabilities Requirements Document \",\"CRDA\":\"Cooperative Research and Development Agreement\",\"CRH\":\"Combat Rescue Helicopter\",\"CRIIS\":\"Common Range Integrated Instrumentation System\",\"CRISP\":\"Cross Industry Standard Process for Data Mining\",\"CRM\":\"Component Resolution Matrix OR Crew Resource Management\",\"CRRA\":\"Capabilities Review and Risk Assessment\",\"CRS\":\"Chairman’s Readiness System\",\"CS\":\"Chief of Staff OR Command Section OR Conducted Susceptibility OR Contractor Support OR Cybersecurity Strategy\",\"CSA\":\"Combat Support Agency\",\"CSAF\":\"Chief of Staff of the Air Force\",\"CSAG\":\"Consolidated Sustainment Activity Group\",\"CSAR\":\"Combat Search and Rescue\",\"CSARL\":\"Combat Search and Rescue Locator\",\"CSB\":\"Configuration Steering Board\",\"CSCI\":\"Computer Software Configuration Items\",\"CSE\":\"Center for Systems Engineering OR Common Support Equipment\",\"CSH\":\"Common Support Helicopter\",\"CSI\":\"Critical Safety Item\",\"CSO\":\"Commodity Strategy Official\",\"CSR\":\"Critical System Resources\",\"CSS\":\"Contract Sustainment Support\",\"C-sUAS\":\"Counter-small Unmanned Aerial Systems\",\"CSWS\":\"Contractor Supported Weapon System\",\"CT\":\"Contractor Testing OR Critical Technology\",\"CTA\":\"Capability Threat Assessments OR Center Test Authority\",\"CTE\":\"Critical Technology Element\",\"CTEIP\":\"Central Test & Evaluation Investment Program\",\"CTF\":\"Combined Task Force\",\"CTIC\":\"Contractor Technical Information Code\",\"CTM\":\"Capability Transition Memorandum\",\"CtO\":\"Certificate to Operate\",\"CTOM\":\"Centralized Technical Order Management\",\"CTP\":\"Critical Technical Parameter\",\"CTR\":\"Capability Transition Review\",\"CUI\":\"Controlled Unclassified Information\",\"CUMI\":\"Controlled Unclassified Military Information\",\"CV\":\"Vice Commander OR Capability Viewpoint\",\"CVI\":\"AFOTEC Information Protection/SAP Security (office symbol)\",\"CVLSP\":\"Common Vertical Lift Support Platform\",\"CVPA\":\"Cooperative Vulnerability and Penetration Assessment\",\"CVW\":\"Carrier Air Wing\",\"CWI\":\"Continuous Wave Illuminator\",\"CY\":\"Calendar Year\",\"D&F\":\"Determination and Findings\",\"D,ARA\":\"Director, Acquisition Resources, and Analysis\",\"D/CAPE\":\"Director, Cost Assessment, and Program Evaluation\",\"D/QT&E\":\"Development/Qualification Test and Evaluation\",\"DA\":\"Department of the Army\",\"DAA\":\"Designated Approval Authority\",\"DAB\":\"Defense Acquisition Board\",\"DAC\":\"Designated Acquisition Commander\",\"DACM\":\"Director, Acquisition Career Management\",\"DAE\":\"Defense Acquisition Executive\",\"DAES\":\"Defense Acquisition Executive Summary\",\"DAF\":\"Department of the Air Force\",\"DAG\":\"Defense Acquisition Guidebook\",\"DAMIR\":\"Defense Acquisition Management Information Retrieval\",\"DAO\":\"Designated Acquisition Officials\",\"DARC\":\"Deep Space Advanced Radar Concept\",\"DARPA\":\"Defense Advanced Research Projects Agency\",\"DART\":\"Data, Acquisition, Recording, and Telemetry OR Deficiency Analysis Ranking Technique\",\"DAS\":\"Defense Acquisition System\",\"DASD\":\"Deputy Assistant Secretary of Defense\",\"DATO\":\"Denial of Authorization to Operate\",\"DAU\":\"Defense Acquisition University\",\"DAWIA\":\"Defense Acquisition Workforce Improvement Act\",\"DBC\":\"Defense Business Council\",\"DBS\":\"Defense Business Systems\",\"DBSMC\":\"Defense Business Systems Management Committee\",\"DC\":\"Derivative Classifier OR Direct Current\",\"DCAA\":\"Defense Contract Audit Agency\",\"DCAPE\":\"Director of Cost Assessment and Program Evaluation\",\"DCAPES\":\"Deliberate and Crisis Action Planning and Execution Segments\",\"DCGS\":\"Distributed Common Ground System\",\"DCID\":\"Director of Central Intelligence Directive\",\"DCMA\":\"Defense Contract Management Agency\",\"DCPDS\":\"Defense Civilian Personnel Data System\",\"DCR\":\"DOTMLPF-P Change Recommendation\",\"DCS\":\"Deputy Chief of Staff\",\"DDNI/M\":\"Deputy Director of National Intelligence for Management\",\"DDR\":\"Deputy Director for Requirements OR Dismount Detection Radar\",\"DDT&E\":\"Director, Developmental Test and Evaluation\",\"DEAD\":\"Destruction of Enemy Air Defenses\",\"DEAMS\":\"Defense Enterprise Accounting and Management System\",\"DEF\":\"Developmental Evaluation Framework\",\"DepSecDef\":\"Deputy Secretary of Defense\",\"Det/CC\":\"Detachment Commander\",\"DEW\":\"Directed Energy Weapons\",\"DEWCB\":\"Directed Energy Weapons Certification Board\",\"DFARS\":\"Defense Federal Acquisition Regulation Supplement\",\"DFCN\":\"Dual Frequency Civil Navigation\",\"DFoS\":\"Decontamination Family of Systems\",\"DHMSM\":\"Defense Healthcare Management Systems Modernization\",\"DIA\":\"Defense Intelligence Agency\",\"DIACAP\":\"DoD Information Assurance Certification and Accreditation Process\",\"DID\":\"Data Item Description\",\"DIP\":\"DIACAP Implementation Plan\",\"DISA\":\"Defense Information Systems Agency\",\"DISR\":\"Department of Defense Information Technology Standards Registry\",\"DITSCAP\":\"Department of Defense Information Technology Security Certification and Accreditation Program\",\"DIV\":\"Data and Information Viewpoint\",\"DLA\":\"Defense Logistics Agency\",\"DLR\":\"Depot-Level Repairable\",\"DM\":\"Data Mining\",\"DMAP\":\"Data Management and Analysis Plan\",\"DMAWG\":\"Depot Maintenance Activation Working Group\",\"DMEA\":\"Defense Microelectronics Activity\",\"DMI\":\"Depot Maintenance Interservice\",\"DMIX JLV\":\"Defense Medical Information Exchange Joint Legacy Viewer\",\"DMS\":\"Defensive Management System OR Diminishing Manufacturing Sources\",\"DMSMS\":\"Diminishing Manufacturing Sources Material Shortages\",\"DNAD\":\"Domestic Non-Availability Determination\",\"DNI\":\"Director of National Intelligence\",\"DoD\":\"Department of Defense\",\"DODAAC\":\"Department of Defense Activity Code\",\"DODD\":\"Department of Defense Directive\",\"DODI\":\"Department of Defense Instruction\",\"DODIN\":\"Department of Defense Information Network\",\"DODIPP\":\"Department of Defense Intelligence Production Program\",\"DODISS\":\"Department of Defense Index of Specifications and Standards\",\"DODM\":\"Department of Defense Manual\",\"DOE\":\"Department of Energy OR Design of Experiments\",\"DoN\":\"Department of the Navy\",\"DOT&E\":\"Director of Operational Test and Evaluation\",\"DOTMLPF-P\":\"Doctrine, Organization, Training, materiel, Leadership Policy and Education, Personnel, Facilities, and Policy\",\"DP\":\"Development Planning\",\"DPAP\":\"Director of Procurement and Acquisition Policy\",\"DPAS\":\"Defense Priorities and Allocation System\",\"DPEM\":\"Depot Purchased Equipment Maintenance\",\"DPG\":\"Defense Planning Guidance\",\"DPGS\":\"Data Processing Ground Station\",\"DPPG\":\"Defense Planning and Programming Guidance\",\"DR SKO\":\"Dismounted Reconnaissance Sets, Kits, and Outfits\",\"DR\":\"Deficiency Report\",\"DRAGON\":\"E-3 Diminishing manufacturing sources Replacement of Avionics for Global Operations and Navigation\",\"DRB\":\"Deficiency Review Board\",\"DREN\":\"Defense Research Engineering Network\",\"DRI\":\"Data Referential Integrity\",\"DRI&R\":\"Deficiency Reporting, Investigation and Resolution\",\"DRM\":\"DRAGON Requirements Memorandum\",\"DRMO\":\"Defense Reutilization Marketing Office\",\"DRR\":\"Design Readiness Review\",\"DRU\":\"Direct Reporting Unit\",\"DS&TI\":\"Designated Science and Technology Information\",\"DSA\":\"Direct Sales Agreement\",\"DSC\":\"Decision Support Question\",\"DSCA\":\"Defense Security Cooperation Agency\",\"DSM\":\"Development System Manager OR Digital System Model\",\"DSOR\":\"Depot Source of Repair\",\"DSOR-EM\":\"Depot Source of Repair-Electronic Manager\",\"DT\":\"Developmental Test\",\"DT&E\":\"Developmental Test and Evaluation\",\"DTD\":\"Data Type Definition\",\"DTIC\":\"Defense Technical Information Center\",\"DTM\":\"Directive-Type Memorandum\",\"DTP\":\"Detailed Test Plan\",\"DUSD\":\"Deputy Under Secretary of Defense\",\"E&S\":\"Effectiveness and Suitability\",\"E-3 DRAGON\":\"E-3 Diminishing manufacturing sources Replacement of Avionics for Global Operations and Navigation\",\"E3\":\"Electromagnetic Environmental Effects\",\"EA\":\"Economic Analysis OR Electronic Attack OR Evolutionary Acquisition OR Executing Authority\",\"EAC\":\"Estimate at Completion\",\"ECD\":\"Estimated Completion Date\",\"ECM\":\"Electronic Countermeasures\",\"ECN\":\"Enclave Control Node\",\"ECSS\":\"Expeditionary Combat Support System\",\"ED\":\"Executive Director\",\"EDGC\":\"Engineering Data Guidance Conference\",\"EDM\":\"Engineering Data Manager (or Management) OR Engineering Development Model\",\"EDSC\":\"Engineering Data Service Center\",\"EEC\":\"Enterprise Engineering Center\",\"EEIC\":\"Element of Expense Investment Code\",\"EFF\":\"Essential Function Failure\",\"EHF\":\"Extremely High Frequency\",\"EIAP\":\"Environment Impact Analysis Process\",\"EIEMA\":\"Enterprise Information Environment Mission Area\",\"EIS\":\"Early Influence Strategy\",\"EIT\":\"Early Influence Team\",\"EITDR\":\"Enterprise Information Technology Data Repository\",\"EKMS\":\"Electronic Key Management System\",\"ELA\":\"Elevated Level of Assurance\",\"ELT\":\"Emergency Locator Transmitter\",\"EMA\":\"Expectation Management Agreement\",\"EMC\":\"Electromagnetic Compatibility\",\"EMC/EMI\":\"Electromagnetic Compatibility/Electromagnetic Interference\",\"EMD\":\"Engineering and Manufacturing Development\",\"EMI\":\"Electromagnetic Interference\",\"EMP\":\"Electromagnetic Pulse\",\"EMSEC\":\"Emission Security\",\"EMV\":\"Electromagnetic Vulnerability\",\"ENSIP\":\"Engine Structural Integrity Program\",\"EO\":\"Electro-Optical OR Executive Order OR Engineering Order\",\"EOA\":\"Early Operational Assessment\",\"EOD\":\"Explosive Ordnance Disposal\",\"EP\":\"Electronic Protection\",\"EPAWSS\":\"F-15 Eagle Passive and Active Warning and Survivability System\",\"EPG\":\"Electronic Proving Ground\",\"EPIP\":\"AIM-120C Advanced Electronic Protection Improvement Program\",\"EPS\":\"Enhanced Polar System\",\"EPVD\":\"Electromagnetically Enhanced Physical Vapor Deposition (gun tube coating\",\"ERF\":\"Electronic Remote Fill\",\"ERM\":\"Environmental Resources Manager\",\"ESC\":\"Electromagnetic Spectrum Certification OR Evaluation Summary Chart\",\"ESOH\":\"Environment, Safety, and Occupational Health\",\"ESOHC\":\"Environment, Safety, and Occupational Health Council\",\"ESOHCB\":\"Environment, Safety, and Occupational Health Certification Board\",\"ESOH-MS\":\"Environment, Safety, and Occupational Health Management System\",\"ESP\":\"Emergency and Special Program\",\"ESS\":\"Effectiveness, Suitability, and Survivability OR Evolved Strategic Satellite Communications\",\"ESW\":\"Electronic Systems Wing OR Evaluation Summary Worksheet\",\"ETIMS\":\"Enhanced Technical Information Management System\",\"ETM\":\"Electronic Technical Manual\",\"ETO\":\"Executing Test Organization\",\"EU\":\"Engineering Units\",\"EUC\":\"End Use Certificate\",\"EV\":\"Evaluation View\",\"EVM\":\"Earned Value Management\",\"EVM-CR\":\"Earned Value Management-Central Repository\",\"EVMS\":\"Earned Value Management System\",\"EW\":\"Electronic Warfare\",\"EWIIP\":\"Electronic Warfare Infrastructure Improvement Program\",\"EWIR\":\"Electronic Warfare Integrated Reprogramming\",\"EWSR\":\"Executive Weapons System Review\",\"F-15 EPAWSS\":\"F-15 Eagle Passive and Active Warning and Survivability System\",\"F-15 IRST\":\"F-15 Infrared Search and Track System\",\"F3I\":\"Form, Fit, Function, or Interface\",\"FAA\":\"Federal Aviation Administration OR Functional Area Analysis\",\"FAB-T\":\"Family of Advanced Beyond Line Of Sight Terminals\",\"FAC-A\":\"Forward Air Controller-Airborne\",\"FAR\":\"Federal Acquisition Regulation\",\"FARM\":\"Functional Area Records Manager\",\"FAT\":\"First Article Test\",\"FCA\":\"Functional Configuration Audit\",\"FCB\":\"Functional Capabilities Board\",\"FCC\":\"Flagship Capability Concepts\",\"FCT\":\"Foreign Comparative Test\",\"FD\":\"Fielding Decision\",\"FD/SC\":\"Failure Definition/Scoring Criteria\",\"FDB\":\"Final Evaluation and Decision Brief\",\"FDD\":\"Full Deployment Decision\",\"FDDR\":\"Full Deployment Decision Review\",\"FDE\":\"Force Development Evaluation\",\"FDO\":\"Fee Determining Official\",\"FDR\":\"Final (or Formal) Design Review\",\"FET\":\"Force Element Terminal\",\"FFP\":\"Firm Fixed Price\",\"FFRDC\":\"Federally Funded Research and Development Centers\",\"FFT\":\"Friendly Force Tracking\",\"FH\":\"Flying Hours\",\"FIAR\":\"Financial Improvement and Audit Readiness\",\"FIP\":\"Federal Information Processing\",\"FISCAM\":\"Federal Information System Controls Audit Manual\",\"FISMA\":\"Federal Information Security Management Act of 2002\",\"FM\":\"Financial Management OR Frequency Modulation OR Functional Manager\",\"FMC\":\"Fully Mission Capable\",\"FMECA\":\"Failure Mode, Effects, and Criticality Analysis\",\"FMM\":\"Flight Manual Manager\",\"FMP\":\"Flight Manuals Program OR Foreign Materiel Program\",\"FMR\":\"Financial Management Regulation\",\"FMRS\":\"Financial Management Regulation System\",\"FMS\":\"Foreign Military Sales\",\"FMU-139 D/B\":\"Fuze Module Unit-139\",\"FNA\":\"Functional Needs Analysis\",\"FOA\":\"Field Operating Agency\",\"FOB\":\"Forward Operating Base\",\"FOC\":\"Full Operational Capability\",\"FOIA\":\"Freedom of Information Act\",\"FoM\":\"Follow-on Modernization\",\"FORGE\":\"Future Operationally Resilient Ground Evolution\",\"FoS\":\"Family of Systems\",\"FOT&E\":\"Follow-on Operational Test and Evaluation\",\"FOU\":\"Full Operational Utility\",\"FOUO\":\"For Official Use Only\",\"FOV\":\"Field of View\",\"FPAF\":\"Fixed-Price with Award Fee\",\"FPD\":\"Follow-on Production Decision\",\"FPDS-NG\":\"Federal Procurement data System-Next Generation\",\"FPIF\":\"Fixed-Price Incentive\",\"FPR\":\"Final Pricing Report OR Final Proposal Revision\",\"FPRA\":\"Forward Price Rate Agreements\",\"FQR\":\"Formal Qualification Review\",\"FRD\":\"Formerly Restricted Data\",\"FRP\":\"Full-Rate Production\",\"FRP/FD\":\"Full-Rate Production or Full Deployment\",\"FRPDR\":\"Full Rate Production Decision Review\",\"FRRB\":\"Functional Requirements Review Board\",\"FSA\":\"Functional Solution Analysis\",\"FSC\":\"Federal Supply Classification\",\"FSR\":\"Field Service Representative\",\"FTE\":\"Full Time Equivalent\",\"FTX\":\"Field Training Exercise\",\"FY\":\"Fiscal Year\",\"FYDP\":\"Future Years Defense Program\",\"G&A\":\"General and Administrative (Expense)\",\"GAO\":\"Government Accountability Office\",\"GAT\":\"Government Analysis Tool\",\"GBS\":\"Global Broadcast Service\",\"GBSD\":\"Ground Based Strategic Deterrent\",\"GBU\":\"Guided Bomb Unit\",\"GCIC\":\"Global Cyberspace Integration Center\",\"GCS\":\"Ground Control Stations\",\"GCSS-AF\":\"Global Combat Support System – Air Force\",\"GDT\":\"Government Development Test\",\"GEF\":\"Guidance for the Employment of the Force\",\"GEO\":\"Geosynchronous Earth Orbit\",\"GFE\":\"Government Furnished Equipment\",\"GFI\":\"Government Furnished Information\",\"GFM\":\"Global Force Management\",\"GFP\":\"Government Furnished Property\",\"GH GSMP\":\"Global Hawk Ground Segment Modernization Program\",\"GIDEP\":\"Government Industry Data Exchange Program\",\"GIG\":\"Global Information Grid\",\"GLSC\":\"Global Logistics Support Center\",\"GMT\":\"Ground Movement Terrain Radar\",\"GMTI\":\"Ground Moving Target Indicator\",\"GO\":\"General Officer\",\"GO/SES\":\"General Officer/Senior Executive Service\",\"GOCO\":\"Government Owned Contractor Operated\",\"GOSG\":\"General Officer Steering Group\",\"GOTS\":\"Government Off-the-Shelf\",\"GPA\":\"GPS Pulse-per-Second Adapter\",\"GPC\":\"Government Purchase Card\",\"GPD\":\"General Purpose Decontaminant Program\",\"GPLR\":\"Government Purpose License Rights\",\"GPR\":\"Government Purpose Rights\",\"GPS III COps\":\"Global Positioning System III Contingency Operations\",\"GPS MCEU\":\"Global Positioning System M-Code Early Use\",\"GPS MGUE\":\"Military GPS User Equipment\",\"GPS OCX\":\"GPS Next Generation Operational Control System\",\"GPS\":\"Global Positioning System\",\"GS\":\"General Schedule\",\"GSA\":\"Government Services Administration\",\"GSMP\":\"Ground Segment Modernization Program\",\"GTG-F\":\"Global Information Grid Technical Guidance Federation\",\"G-TSCMIS\":\"Global Theater Security Cooperative Management Information System\",\"GTV\":\"Guided Test Vehicle\",\"HAF\":\"Headquarters Air Force\",\"HAFMD\":\"Headquarters Air Force Mission Directive\",\"HAMS\":\"Hardness Assurance, Maintenance, and Surveillance\",\"HARPOON\":\"(AGM-84-Fixed Wing; RGM-Surface Ships; UGM-Submarine Launched)\",\"HCA\":\"Head of Contracting Activity (or Agency)\",\"HCI\":\"Human-Computer Interactions\",\"HCSP\":\"Human Capital Strategic Plan\",\"HCSW\":\"Hypersonic Conventional Strike Weapon\",\"HDF\":\"Hierarchical Data Format\",\"HEMP\":\"High-Altitude Electromagnetic Pulse\",\"HERF\":\"Hazards of Electromagnetic Radiation to Volatile Material\",\"HERO\":\"Hazards of Electromagnetic Radiation to Ordinance\",\"HERP\":\"Hazards of Electromagnetic Radiation to Personnel\",\"HFE\":\"Human Factors Engineering\",\"HITL\":\"Hardware in the Loop\",\"HM/HS\":\"Hardness Maintenance / Hardness Surveillance\",\"HMS\":\"Handheld, Manpack, and Small Form Fit\",\"HO\":\"HQ AFOTEC History Office\",\"HOI\":\"Headquarters Operating Instruction\",\"HPT\":\"High Performance Team\",\"HQ\":\"Headquarters\",\"HSI\":\"Human Systems Integration\",\"HSN\":\"High Speed Network\",\"HSP\":\"Health and Safety Plan\",\"HTM\":\"Hard Target Munitions\",\"HTVSF\":\"Hard Target Void Sensing Fuze\",\"HwA\":\"Hardware Assurance\",\"IA\":\"Information Assurance (replaced by “cybersecurity”)\",\"IAC\":\"International Armaments Cooperation\",\"IAD\":\"Integrated Air Defense\",\"IADS\":\"Integrated Air Defense System\",\"IAE\":\"Integrated Aircrew Ensemble\",\"IAMD\":\"Integrated Air and Missile Defense\",\"IATO\":\"Interim Authorization to Operate\",\"IATT\":\"Interim Authority to Test or Authorization to Test\",\"IAVA\":\"Information Assurance Vulnerability Alert\",\"IAW\":\"In Accordance With\",\"IB\":\"Involvement Briefing\",\"IBA\":\"Individual Body Armor\",\"IBBP\":\"Involvement Bullet Background Paper\",\"IBCT\":\"Infantry Brigade Combat Team\",\"IBDC2\":\"Integrated Base Defense Command and Control\",\"IBDSS\":\"Integrated Base Defense Security System\",\"IBR\":\"Integrated Baseline Review\",\"IBS\":\"Integrated Broadcast Service\",\"IC\":\"Intelligence Community\",\"ICADS\":\"Individual Combat Aircrew Display System\",\"ICBM\":\"Intercontinental Ballistic Missile\",\"ICCR\":\"Intelligence Community Capability Requirements\",\"ICD\":\"Initial Capabilities Document OR Interface Control Document\",\"iCDD\":\"initial Capability Development Document\",\"ICE\":\"Independent Cost Estimate\",\"ICEP\":\"Information Certification Evaluation Plan\",\"ICM\":\"Interim Contractor Support\",\"ICP\":\"Inventory Control Point\",\"ICS\":\"Interim Contract Support\",\"ICT\":\"Integrated Concept Team\",\"ID\":\"Identification\",\"ID/IQ\":\"Indefinite Delivery/Indefinite Quantity\",\"IDE\":\"Integrated Data Environment\",\"IDL\":\"Indentured Data List\",\"IDRL\":\"Integrated Data Requirements List\",\"IEB\":\"Initial Evaluation Briefing\",\"IED\":\"Improvised Explosive Device\",\"iEHR\":\"Integrated Electronic Health Records\",\"IER\":\"Information Exchange Requirements\",\"IETM\":\"Interactive Electronic Technical Manual\",\"IFC\":\"Integrated Functional Capability\",\"IFDL\":\"Intraflight Datalink\",\"IFM\":\"Intelligence in Force Modernization\",\"IFTU\":\"In-Flight Targeting Update\",\"IGF\":\"Inherently Governmental Function\",\"IITD\":\"Initial Integrated Test Design\",\"IL\":\"Involvement Letter\",\"ILCM\":\"Integrated Life Cycle Management\",\"ILS\":\"Instrument Landing System OR Integrated Logistics Support\",\"ILSP\":\"Integrated Logistics Support Plan\",\"IM\":\"Insensitive Munitions\",\"IMC\":\"Instrument Meteorological Conditions\",\"IMD\":\"Intelligence Mission Data\",\"IMDS\":\"Integrated Maintenance Data System\",\"IMET\":\"International Military Education and Training\",\"IMP\":\"Integrated Master Plan\",\"IMS\":\"Integrated Master Schedule\",\"IMT\":\"Information Management Tool\",\"IMTP\":\"Integrated Master Test Plan\",\"INC\":\"Increment\",\"INS\":\"Inertial Navigation System\",\"IO\":\"Information Operations\",\"IOC\":\"Initial Operational Capability\",\"IOT\":\"Initial Operational Test\",\"IOT&E\":\"Initial Operational Test and Evaluation\",\"IP\":\"Information Protection OR Initial Point OR Intellectual Property OR Internet Protocol\",\"IPA\":\"Independent Program Assessment\",\"IPAT\":\"Independent Program Assessment Team\",\"IPL\":\"Integrated Priority List\",\"IPMR\":\"Independent Program Management Report\",\"IPR\":\"In-Process Review\",\"IPS\":\"Integrated Program Summary OR Intellectual Property Strategy\",\"IPSS\":\"Initial Provisioning Performance Specifications\",\"IPT\":\"Integrated Product Team\",\"IR\":\"Infrared\",\"IRAD\":\"Independent Research and Development\",\"IRB\":\"Intelligence Resources Board OR Investment Review Board\",\"IRCM\":\"Infrared Countermeasures\",\"IRSS\":\"Information and Resource Support System\",\"IRST\":\"Infrared Search and Track System\",\"IS CDD\":\"Information System Capability Development Document\",\"IS ICD\":\"Information System Initial Capabilities Document\",\"IS\":\"Information System\",\"ISA\":\"International Standardization Agreement\",\"ISACA\":\"Information Systems Audit and Control Association\",\"ISO\":\"International Standards Organization\",\"ISOO\":\"Information Security Oversight Office\",\"ISP\":\"Information Support Plan\",\"ISPAN\":\"Integrated Strategic Planning and Analysis Network\",\"ISR\":\"Intelligence, Surveillance, and Reconnaissance OR Interim Summary Report\",\"ISSM\":\"Information System Security Manager\",\"ISWG\":\"Intelligence Support Working Group\",\"IT Lean\":\"Information Technology Lean\",\"IT\":\"Information Technology OR Integrated Testing\",\"IT&E\":\"Integrated Test and Evaluation\",\"IT/NSS\":\"Information Technology/National Security System\",\"ITA\":\"Interface Test Adapter\",\"ITAB\":\"Information Technology Acquisition Board\",\"ITC\":\"Integrated Test Concept\",\"ITD\":\"Initial Test Design\",\"ITEA\":\"Initial Threat Environment Assessment\",\"ITO\":\"Initial Tasking Order\",\"ITP\":\"Integrated Test Plan\",\"ITT\":\"Integrated Test Team\",\"IUID\":\"Item Unique Identification\",\"IUS\":\"Internal Use Software\",\"IW\":\"Information Warfare\",\"IWBU\":\"Internal Weapons Bay Upgrade\",\"IWSM\":\"Integrated Weapons System Management\",\"J&A\":\"Justification and Approval\",\"J-8/DDR\":\"Joint Staff J-8, Deputy Director for Requirements\",\"J-8/SAPCOORD\":\"Joint Staff J-8, Special Access Program Coordinator\",\"JAFAN\":\"Joint Air Force Army Navy\",\"JAGM\":\"Joint Air-to-Ground Missile\",\"JALN\":\"Joint Aerial Layered Network\",\"JASSM\":\"Joint Air-to-Surface Standoff Missile\",\"JAWS\":\"Joint Avionics Workstation\",\"JBADS\":\"Joint Biological Agent Decontamination System\",\"JBTDS\":\"Joint Biological Tactical Detection System\",\"JCA\":\"Joint Capability Area\",\"JCAAMP\":\"Joint Improvised Explosive Device Defeat Capability Approval and Acquisition Management Process\",\"JCALS\":\"Joint Computer-Aided Acquisition and Logistic Support\",\"JCB\":\"Joint Capabilities Board\",\"JCC2\":\"Joint Cyber Command and Control\",\"JCCA\":\"Joint Combat Capability Assessment\",\"JCD\":\"Joint Capabilities Document\",\"JCIDS\":\"Joint Capabilities Integration and Development System\",\"JCPATE\":\"Joint C4I Program Assessment Tool-Empowered\",\"JCREW\":\"Joint Counter Radio-Controlled Improvised Explosive Device Electronic Warfare\",\"JCS\":\"Joint Chiefs of Staff\",\"JCTD\":\"Joint Capability Technology Demonstration\",\"JDAM\":\"Joint Direct Attack Munition\",\"JDMAG\":\"Joint Depot Maintenance Activities Group\",\"JDRS\":\"Joint Deficiency Reporting System\",\"JEDMICS\":\"Joint Engineering Data Management Information and Combat System\",\"JEM\":\"Joint Effects Model\",\"JENM\":\"Joint Enterprise Network Manager\",\"JEON\":\"Joint Emergent Operational Need\",\"JFC\":\"Joint Functional Concept\",\"JFCC\":\"Joint Functional Component Commander\",\"JIC\":\"Joint Integrating Concept\",\"JICO\":\"Joint Interface Control Officer\",\"JIE\":\"Joint Intelligence Estimate\",\"JIEDDF\":\"Joint Improvised Explosive Device Defeat Fund\",\"JIEDDO\":\"Joint Improvised Explosive Device Defeat Organization\",\"JITC\":\"Joint Interoperability Test Command\",\"JLE\":\"Joint Logistics Estimate\",\"JLLP\":\"Joint Lessons Learned Program\",\"JLTV\":\"Joint Light Tactical Vehicle\",\"JMC\":\"Joint Mission Computer\",\"JMETC\":\"Joint Mission Environment Test Capability\",\"JMM\":\"Joint Miniature Munitions\",\"JMS\":\"Joint Space Operations Center (JSpOC) Mission System\",\"JMT\":\"Joint Mission Thread\",\"JOC\":\"Joint Operating Concept\",\"JOMIS\":\"Joint Operational Medicine Information Systems\",\"JOpsC\":\"Joint Operations Concept\",\"JOTT\":\"JSF Operational Test Team\",\"JP\":\"Joint Publication\",\"JPALS\":\"Joint Precision Approach and Landing System\",\"JPD\":\"Joint Potential Designator\",\"JPE\":\"Joint Personnel Estimate\",\"JPG\":\"Joint Planning Guidance\",\"JPO\":\"Joint Strike fighter Program Office\",\"JRAC\":\"Joint Rapid Acquisition Cell\",\"JRMET\":\"Joint Reliability and Maintainability Evaluation Team\",\"JRO\":\"Joint Requirements Office\",\"JROC\":\"Joint Requirements Oversight Council\",\"JROCM\":\"Joint Requirements Oversight Council Memorandum\",\"JS\":\"Joint Staff\",\"JSA\":\"Joint Strategic Assessment\",\"JSAM-FW\":\"Joint Service Aircrew Mask-Fixed Wing\",\"JSAM-SA\":\"Joint Service Aircrew Mask-Strategic Aircraft\",\"JSAM-TA\":\"Joint Service Aircrew Mask-Tactical Aircraft\",\"JSD\":\"Joint Staffing Designator\",\"JSE\":\"Joint Simulation Environment\",\"JSEW\":\"Joint Sensitive Equipment Wipes (Decontamination Family of Systems)\",\"JSF\":\"Joint Strike Fighter\",\"JSIG\":\"Joint Special Access Program (SAP) Implementation Guide\",\"JSOW\":\"Joint Stand-Off Weapon\",\"JSpOC\":\"Joint Space Operations Center\",\"JSPS\":\"Joint Strategic Planning System\",\"JSR\":\"Joint Strategy Review\",\"JSS\":\"Joint Interface Control Officer (JICO) Support System\",\"JSTAR\":\"Joint System Threat Assessment Report\",\"JSTARS RECAP\":\"Joint Surveillance Target Attack Radar System Recapitalization\",\"JT&E\":\"Joint Test and Evaluation\",\"JTAC\":\"Joint Terminal Attack Controller\",\"JTR\":\"Joint Tactical Radio\",\"JTRS\":\"Joint Tactical Radio System\",\"JTRS-AMF\":\"Joint Tactical Radio System-Airborne Maritime Fixed\",\"JUON\":\"Joint Urgent Operational Need\",\"JUPITR\":\"Joint United States Forces Korea Portal and Integrated Threat Recognition\",\"JWARN\":\"Joint Warning & Reporting Network\",\"JWICS\":\"Joint Worldwide Intelligence Communications System\",\"KDP\":\"Key Decision Point\",\"KIP\":\"Key Interface Profile\",\"KLP\":\"Key Leadership Position\",\"KM/DS\":\"Knowledge Management/Decision Support\",\"KN\":\"Knowledge Now\",\"KPP\":\"Key Performance Parameter\",\"KSA\":\"Key System Attribute\",\"L2\":\"Lessons Learned\",\"LA\":\"Logistics Assessment\",\"LAT\":\"Lot Acceptance Test\",\"L-band\":\"Long Band\",\"LC\":\"HQ AFOTEC Legal Counsel\",\"LCB\":\"Lower Confidence Bound\",\"LCC\":\"Life Cycle Cost\",\"LCCE\":\"Life Cycle Cost Estimate\",\"LCMC\":\"Life Cycle Management Center\",\"LCMP\":\"Life Cycle Management Plan\",\"LCRM\":\"Life Cycle Risk Management\",\"LCS\":\"Launch and Checkout System\",\"LCSP\":\"Life Cycle Sustainment Plan\",\"LD\":\"Limited Deployment OR Logistics Demonstration\",\"LDC\":\"LAN Data Collector\",\"LDTO\":\"Lead Developmental Test Organization\",\"LED\":\"Light Emitting Diode\",\"LEO\":\"Low Earth Orbit\",\"LEP\":\"Life Extension Program\",\"LFD\":\"Limited Fielding Decision\",\"LFT&E\":\"Live Fire Test and Evaluation\",\"LHA\":\"Logistics Health Assessments\",\"LJDAM\":\"Laser Joint Direct Attack Munition (GBU-56)\",\"LM\":\"Lockheed Martin\",\"LMD\":\"Logistics MANPRINT Demonstration\",\"LMDP\":\"Life Cycle Mission Data Plan\",\"LNE\":\"Late Network Entry\",\"LNO\":\"Liaison Officers\",\"LOA\":\"Letter of Offer and Acceptance\",\"LORA\":\"Level of Repair Analysis\",\"LOS\":\"Line of Sight\",\"LR\":\"Limited Rights\",\"LRDR\":\"Long Range Discrimination Radar\",\"LRIP\":\"Low Rate Initial Production\",\"LRSO\":\"Long Range Standoff\",\"LRT\":\"Logistics Response Time\",\"LRU\":\"Line-Replaceable Unit\",\"LSC\":\"Logistics Support Concept\",\"LSE\":\"Lead Systems Engineer\",\"LSI\":\"Large Scale Integration OR Lead Systems Integrator\",\"LTE\":\"Last Test Event\",\"LTWG\":\"Logistics Test Working Group\",\"LUT\":\"Limited User Test\",\"LVC\":\"Live, Virtual, and Constructive\",\"M&S\":\"Modeling and Simulation\",\"M&S CO\":\"Modeling and Simulation Coordination Office\",\"MAAP\":\"Master Air Attack Plan\",\"MAAPTK\":\"Master Air Attack Planning Toolkit\",\"MAC\":\"Mission Assurance Category\",\"MACH\":\"Modular Air Crew Helmet\",\"MADL\":\"Multifunction Advanced Data Link\",\"MAF-DRC\":\"Mobility Air Forces-Dynamic Retasking Capability\",\"MAFPS\":\"Mobility Air Force Automated Flight Planning Service\",\"MAIS\":\"Major Automated Information System\",\"MAJCOM\":\"Major Command\",\"MALD-J\":\"Miniature Air Launched Decoy-Jammer\",\"MANPAD\":\"Man Portable Air Defense System\",\"MANPRINT\":\"Manpower and Personnel Integration\",\"MAnTSS\":\"Modular Analysis and Test Support System\",\"MAR\":\"Monthly Acquisition Report\",\"MAV\":\"Maverick\",\"MBITR\":\"Multiband Inter/Intra Team Radio\",\"MBTD\":\"Mission Based Test Design\",\"MC\":\"Mission Capable\",\"MCF\":\"Mission Critical Functions\",\"MCOTEA\":\"Marine Corps Operational Test and Evaluation Activity\",\"MCR\":\"Message Completion Rate\",\"MD\":\"Mission Directive\",\"MDA\":\"Milestone Decision Authority OR Missile Defense Agency\",\"MDAP\":\"Major Defense Acquisition Program\",\"MDD\":\"Maintenance Data Documentation OR Material Development Decision\",\"MDF\":\"Mission Data File\",\"MDS\":\"Mission Design Series\",\"MDT\":\"Mean Down Time\",\"ME/SE\":\"Maintenance Engineering/Sustaining Engineering\",\"MECSIP\":\"Mechanical Subsystems Integrity Plan\",\"MEDALS\":\"Military Engineering Data Asset Locator System\",\"MEFL\":\"Mission Essential Functions List\",\"MEO\":\"Medium Earth Orbit\",\"MER\":\"Manpower Estimate Report\",\"MESL\":\"Minimum Essential Subsystems List\",\"MEV\":\"Military Equipment Valuation\",\"MFOQA\":\"Military Flight Operations Quality Assurance\",\"MFP\":\"Major Force Program OR Materiel Fielding Plan\",\"MFR\":\"Memorandum for Record\",\"MFT\":\"Multi-Functional Team\",\"MGRS\":\"Military Grid Referencing System\",\"MGUE Inc 2 HH\":\"Military GPS User Equipment Hand Held\",\"MGUE\":\"Military GPS User Equipment\",\"MHS\":\"Modular Handgun System\",\"MHz\":\"Megahertz\",\"MIL-DTL\":\"Military Detail (Specification)\",\"MIL-HDBK\":\"Military Handbook\",\"MIL-PRF\":\"Military Performance (Specification)\",\"MIL-STD\":\"Military Standard\",\"MIP\":\"Materiel Improvement Program OR Military Intelligence Program\",\"MIPR\":\"Military Interdepartmental Purchase Request\",\"MIPRB\":\"Material Improvement Program Review Board\",\"MLS\":\"Multiple Levels of Security\",\"MMT\":\"Munitions, Missiles, and Target\",\"MNS\":\"Mission Needs Statement\",\"MOA\":\"Memorandum of Agreement\",\"MOASP\":\"Management and Oversight of Acquisition Services Process\",\"MOE\":\"Measure of Effectiveness\",\"MOP\":\"Measure of Performance\",\"MOPP\":\"Mission Oriented Protective Posture\",\"MOS\":\"Measure of Suitability OR Military Occupational Specialty\",\"MOSA\":\"Modular Open Systems Approach\",\"MOT&E\":\"Multiservice Operational Test and Evaluation\",\"MOU\":\"Memorandum of Understanding\",\"MP\":\"Mission Profile\",\"MPA\":\"Manpower Authorization\",\"MPE\":\"Mission Planning Element\",\"MPGPA\":\"Multipart GPS Pulse-per-Second Adapter\",\"MPS\":\"Master Program Schedule OR Mission Planning System\",\"MPTO\":\"Methods and Procedures Technical Order\",\"MRA\":\"Manufacturing Readiness Assessment\",\"MRB\":\"Mission Requirements Board\",\"MRDS\":\"Man-Portable Radiological Detection System\",\"MRL\":\"Manufacturing Readiness Level\",\"MROi\":\"Air Force Depot Maintenance, Repair, and Overhaul Initiative\",\"MRP\":\"Munitions Requirements Process\",\"MRR\":\"Materiel Release Review\",\"MRRB\":\"Maintenance Requirement Review Board\",\"MRSP\":\"Mobility Readiness Spares Package\",\"MRTFB\":\"Major Range and Test Facility Base\",\"MS\":\"Milestone\",\"MSA\":\"Materiel Solution Analysis\",\"MSIAC\":\"Modeling and Simulation Information Analysis Center\",\"MSL\":\"Mean Sea Level\",\"MSSP\":\"Modeling and Simulation Support Plan\",\"MTBEFF\":\"Mean Time Between Essential Function Failures\",\"MTTR\":\"Mean Time To Repair\",\"MUA\":\"Military Utility Assessment\",\"MUOS\":\"Mobile User Objective System\",\"MW\":\"Measures Workshop\",\"NAOC\":\"National Airborne Operations Center\",\"NASIC\":\"National Air and Space Intelligence Center\",\"NATO\":\"North Atlantic Treaty Organization\",\"NAVPLAN TPC\":\"Navigation Plan Tactical Pilotage Charts\",\"NBC\":\"Nuclear, Biological and Chemical\",\"NC2-ESI\":\"Nuclear Command and Control-Extremely Sensitive Information\",\"NC3\":\"Nuclear Command, Control, Communications\",\"NCOW\":\"Network-Centric Operations and Warfare\",\"NCOW RM\":\"Net-Centric Operations and Warfare Reference Model\",\"NDAA\":\"National Defense Authorization Act\",\"NDF\":\"Network Design Facility\",\"NDI\":\"Non-Developmental Item\",\"NDS\":\"National Defense Strategy\",\"NEPA\":\"National Environmental Policy Act\",\"NET\":\"New Equipment Training\",\"NetRA\":\"Network Risk Assessment\",\"NEW\":\"Network Enabled Weapon\",\"NGG\":\"Next Generation Geosynchronous Earth Orbit (GEO)\",\"NGP\":\"Next Generation Polar\",\"NGA\":\"National Geospatial-Intelligence Agency\",\"NGB\":\"National Guard Bureau\",\"NGCD\":\"Next Generation Chemical Detector\",\"NGDS\":\"Next Generation Diagnostic System\",\"NGREA\":\"National Guard and Reserve Equipment Account\",\"NGS\":\"Non-Government Standard (commercial)\",\"NID\":\"National Interest Determination\",\"NIP\":\"National Intelligence Program\",\"NIPRNet\":\"Non-Secure Internet Protocol Router Network\",\"NISPOM\":\"National Industrial Security Program Operating Manual\",\"NIST\":\"National Institute of Standards and Technology\",\"NKCE\":\"Non-Kinetic Counter Electronics\",\"NLT\":\"No or Not Later Than\",\"NM\":\"Network Management\",\"NMC\":\"Not Mission Capable\",\"NMS\":\"National Military Strategy\",\"NNMSB\":\"Nonnuclear Munitions Safety Board\",\"NNSA\":\"National Nuclear Security Administration\",\"NOU\":\"No Operational Utility\",\"NPES\":\"Nuclear Planning and Execution System Modernization\",\"NR KPP\":\"Net-Ready Key Performance Parameter\",\"NRE\":\"Non-Recurring Engineering\",\"NRO\":\"National Reconnaissance Office\",\"NSA\":\"National Security Agency\",\"NSL\":\"Near Strike Lightning\",\"NSN\":\"National Stock Number\",\"NSPS\":\"National Security Personnel System\",\"NSS\":\"National Security Space OR National Security Strategy OR National Security System\",\"NTTR\":\"Nevada Test and Training Range\",\"NWC\":\"Nuclear Weapons Council\",\"NWRM\":\"Nuclear Weapons Related Materiel\",\"O&M\":\"Operation and Maintenance\",\"O&S\":\"Operation and Support\",\"OA\":\"Operational Assessment OR Operational Availability\",\"OAG\":\"Operational Advisory Group (USN/USMC)\",\"OAR\":\"Open-Air Range\",\"OARL\":\"Operating at Risk List\",\"OAS\":\"Office of Aerospace Studies\",\"OASD/NII\":\"Office Assistant Secretary of Defense/Network and Information Integration\",\"OASuW\":\"Offensive Anti-Surface Weapon\",\"OC\":\"Operational Capability\",\"OCA\":\"Original Classification Authority\",\"OCC\":\"Occupational Specialty Code\",\"OCDD\":\"Operational Capability Development Document\",\"OCE\":\"Operational Concept of Employment\",\"OCR\":\"Office of Collateral Responsibility OR Operational Capability Requirement\",\"OCX\":\"GPS Next Generation Operational Control System\",\"OE\":\"Operational Effectiveness OR Operational Environment\",\"OEM\":\"Original Equipment Manufacturer\",\"OER\":\"Operational Test Agency Evaluation Report\",\"OFP\":\"Operational Flight Program\",\"OFS\":\"Operational Flight Software\",\"OIPT\":\"Overarching Integrated Product Team\",\"OL\":\"Operating Location\",\"OMB\":\"Office of Management and Budget\",\"OML\":\"Outer Mold Line\",\"OMS\":\"Operational Mission Summary OR Operational Mode Summary\",\"OND\":\"Operational Need Date\",\"OPIR\":\"Overhead Persistent Infrared\",\"OPLAN\":\"Operations Plan\",\"OPORD\":\"Operations Order\",\"OPR\":\"Office of Primary Responsibility\",\"OPSEC\":\"Operations Security\",\"OPTEMPO\":\"Operational Tempo\",\"OPTEVFOR\":\"Operational Test and Evaluation Force\",\"ORD\":\"Operational Requirements Document\",\"ORM\":\"Operational Risk Management\",\"OS\":\"Operational Suitability\",\"OSD\":\"Office of the Secretary of Defense\",\"OSHA\":\"Occupational Safety and Health Administration\",\"OSS&E\":\"Operational Safety, Suitability, and Effectiveness\",\"OT\":\"Operational Test\",\"OT&E\":\"Operational Test and Evaluation\",\"OTA\":\"Operational Test Agency OR Other Transactions Authority\",\"OTAR\":\"Over-the-Air Re-key\",\"OTB\":\"Over Target Baseline\",\"OTC\":\"United States Army Operational Test Command\",\"OTD\":\"Open Technology Development\",\"OTI\":\"Operational Training Infrastructure\",\"OTIF\":\"Operational Test Information Files\",\"OTO\":\"Operational Test Organization\",\"OTRR\":\"Operational Test Readiness Review\",\"OTS\":\"Over Target Schedule\",\"OU\":\"Operational Utility\",\"OUA\":\"Operational Utility Assessment\",\"OUE\":\"Operational Utility Evaluation\",\"OUSD\":\"Office of the Under Secretary of Defense\",\"OV\":\"Operational View (or Viewpoint)\",\"OWLP\":\"Overseas Workload Program\",\"P&D\":\"Production and Deployment (phase)\",\"P3I\":\"Pre-Planned Product Improvement\",\"PA\":\"Partnering Arrangement OR Preparing Activity OR Preparing Authority OR Program Authorization ORPublic Affairs\",\"PAA\":\"Phased Adaptive Approach\",\"PAD\":\"Program Action Directive\",\"PAM\":\"Pamphlet OR Performance Attributes Matrix\",\"PAR\":\"Presidential Aircraft Recapitalization OR Proposal Analysis Report\",\"PAS\":\"Personnel Accounting Symbol\",\"PAT&E\":\"Production Acceptance Test and Evaluation\",\"PAUC\":\"Program Acquisition Unit Cost\",\"PB\":\"President’s Budget\",\"PBA\":\"Performance Based Acquisition OR Performance Based Agreement\",\"PBCM\":\"Portable Biological Containment Module\",\"PBL\":\"Performance Based Logistics\",\"PBR\":\"Program/Budget Review\",\"PC\":\"Product Center\",\"PCC\":\"Program Control Chief\",\"PCO\":\"Procuring Contracting Officer\",\"PD\":\"Program Director\",\"PDAQ\":\"Product Data Acquisition\",\"PDM\":\"Program Decision Memorandum OR Programmed Depot Maintenance\",\"PDR\":\"Preliminary Design Review\",\"PE\":\"Program Element\",\"PEM\":\"Program Element Monitor\",\"PEO\":\"Program Executive Office / Officer\",\"PESD\":\"Personnel Electrostatic Discharge\",\"PESHE\":\"Programmatic Environment, Safety, and Occupational Health Evaluation\",\"PG\":\"Product Group\",\"PGI\":\"Procedures, Guidance, and Information\",\"PGL\":\"Program Guidance Letter\",\"PGM\":\"Precision Guided Munitions OR Product Group Manager\",\"PHS&T\":\"Packaging, Handling, Storage, and Transportation\",\"PIA\":\"Privacy Impact Assessment\",\"PID\":\"Program Introduction Document\",\"PII\":\"Personally Identifiable Information\",\"PIR\":\"Post-Implementation Review\",\"PISR\":\"Persistent Intelligence, Surveillance, and Reconnaissance\",\"PIT\":\"Platform Information Technology\",\"PL\":\"Public Law\",\"PLI\":\"Position Location Information\",\"PLMS\":\"Product Lifecycle Management System\",\"PLR\":\"Position Location Recorder\",\"PM\":\"Program Manager\",\"PM/MFT\":\"Program Management or Multi-Functional Team\",\"PMA\":\"Program Management Agreement\",\"PMB\":\"Performance Measurement Baseline\",\"PMC\":\"Partially Mission Capable\",\"PMCS\":\"Preventive Maintenance Checks and Services\",\"PMD\":\"Program Management Directive\",\"PML\":\"Program Management Listing\",\"PMO\":\"Program Management Office\",\"PMRT\":\"Program Management Resource Tools\",\"PMT\":\"Program Manager‘s Tool\",\"PNVC\":\"Presidential and National Voice Conferencing\",\"PO\":\"Program Office OR Project Officer\",\"POA&M\":\"Plan of Action & Milestones\",\"POC\":\"Point of Contact\",\"POE\":\"Program Office Estimates\",\"POM\":\"Program Objective Memorandum\",\"POMx\":\"Point of Maintenance\",\"PoPS\":\"Probability of Program Success\",\"PoR\":\"Program of Record\",\"POS\":\"Pre-Operational Support\",\"POU\":\"Partial Operational Utility\",\"PPBE\":\"Planning, Programming, Budgeting, and Execution\",\"P-PLAN\":\"Programming Plan\",\"PPLANS\":\"Programming Plans\",\"PPP\":\"Program Protection Plan OR Public-Private Partnership\",\"PPQT\":\"Pre-Production Qualification Test\",\"PPR\":\"Post-Publication Review\",\"PQT\":\"Production Qualification Test\",\"PRA\":\"Performance Risk Assessment\",\"PRO\":\"Portable Rugged Objected\",\"PRR\":\"Production Readiness Review\",\"PS-BCA\":\"Product Support Business Case Analysis\",\"PSEAG\":\"Physical Security Equipment Action Group\",\"PSI\":\"Product Support Integrator\",\"PSIP\":\"Propulsion Systems Integrity Program\",\"PSM\":\"Product Support Manager\",\"PSMP\":\"Product Support Management Plan\",\"PSN\":\"Publication Stock Number\",\"PSP\":\"Product Support Provider\",\"PSpec\":\"Preliminary Specification\",\"PSR\":\"Program Support Review\",\"PTES\":\"Protected Tactical Enterprise Services\",\"PTO\":\"Participating Test Organization OR Preliminary Technical Order\",\"PTS\":\"Protected Tactical SATCOM\",\"PTSS\":\"Precision Tracking Space System\",\"PV\":\"Project Viewpoint\",\"PVI\":\"Pilot Vehicle Interface\",\"PWS\":\"Performance Work Statement\",\"QDR\":\"Quadrennial Defense Review\",\"QoS\":\"Quality of Service\",\"QOT&E\":\"Qualification Operational Test and Evaluation\",\"QRC\":\"Quick Reaction Capability\",\"QRF\":\"Quick Reaction Fund\",\"QRG\":\"Quick Reference Guide\",\"QRIP\":\"Quick Reaction Instrumentation Package\",\"QT&E\":\"Qualification Test and Evaluation\",\"R&D\":\"Research and Development\",\"R&M\":\"Reliability and Maintainability\",\"R/T\":\"Request for Test\",\"RAA\":\"Rapid Acquisition Authority OR Required Assets Available\",\"RADAR\":\"Radio Detection and Ranging\",\"RAI\":\"Recorded Aircraft Information\",\"RALOT\":\"Risk Assessment Level of Test\",\"RAM\":\"Reliability, Availability, and Maintainability\",\"RAM&C\":\"Reliability, Availability, Maintainability, and Cost\",\"RAMPOD\":\"Reliability, Availability, Maintainability for Pods and Integrated Systems\",\"RAMS\":\"Reliability, Availability, Maintainability, and Supportability\",\"RAPIDS\":\"Rapid Analysis Processing Instrumentation Deployment System\",\"RC\":\"Recommended Changes\",\"RCA\":\"Regulatory Contracting Approval\",\"RCM\":\"Reliability Centered Maintenance\",\"RCN\":\"Report Control Number\",\"RCT\":\"Requirements Correlation Table\",\"RD\":\"Restricted Data\",\"RDGT\":\"Reliability Development/Growth Test\",\"RDS\":\"Radiological Detection System OR Records Disposition Schedule\",\"RDT&E\":\"Research, Development, Test and Evaluation\",\"REMIS\":\"Reliability and Maintainability Information System\",\"RF\":\"Radio Frequency\",\"RFID\":\"Radio Frequency Identification\",\"RFP\":\"Request for Proposal\",\"RGC\":\"Reliability Growth Curve\",\"RI3\":\"Risk Identification: Integration & -Ilities\",\"RICS2\":\"Remote Reconfigurable Intelligent Instrumentation to Control, Collect, Simulate and Stimulate\",\"RIID\":\"Radioisotope Identification Detector\",\"RLA\":\"Rotary Launcher Assembly\",\"RM\":\"Reference Manual OR Risk Management\",\"RM&A\":\"Reliability, Maintainability and Availability\",\"RMCT\":\"Requirements Management Certification Training\",\"RMD\":\"Requirements Management Division\",\"RMF\":\"Risk Management Framework\",\"RMP\":\"Radar Modernization Program OR Risk Management Plan\",\"ROM\":\"Rough Order of Magnitude\",\"RPA\":\"Remotely Piloted Aircraft\",\"RPIE\":\"Real Property Installed Equipment\",\"RQ-4B Bk 30 MSI\":\"RQ-4B Block 30 Multi-Spectral Intelligence\",\"RR\":\"Rifleman Radio\",\"RRB\":\"Requirements Review Board\",\"RRF\":\"Rapid Reaction Fund\",\"RRP\":\"Rapid Response Process\",\"RS\":\"Radiated Susceptibility\",\"RSE\":\"Radar Signal Emulator\",\"RSR\":\"Requirements Strategy Review\",\"RTKN\":\"Real Time Kill Notification\",\"RTO\":\"Radio Telephone Operator OR Ready for Transition to Operations ORResponsible Test Organization (now obsolete) OR Range Training Officer\",\"R-TOC\":\"Reduction of Total Ownership Cost\",\"RTT\":\"Readiness to Test\",\"S&T\":\"Science and Technology\",\"S2E2\":\"Space Based Infrared Sys (SBIRS) Survivable and Endurable Evolution\",\"SA\":\"Security Assistance OR Situational Awareness OR System Administrator\",\"SAASM\":\"Selective Availability Anti-Spoofing Module\",\"SAE\":\"Service Acquisition Executive\",\"SAF\":\"Secretary of the Air Force\",\"SAF/AQ\":\"Assistant Secretary of the Air Force (Acquisition)\",\"SAF/AQX\":\"Deputy Assistant Secretary for Acquisition Integration\",\"SAF/CIO A6\":\"Chief of Warfighting Integration and Chief Information Officer (CIO)\",\"SAF/FM\":\"Assistant Secretary of the Air Force (Financial Management)\",\"SAF/FMC\":\"Deputy Assistant Secretary (DAS) of the Air Force for Cost and Economics\",\"SAF/GC\":\"General Counsel of the Air Force\",\"SAF/GCQ\":\"Deputy General Counsel (Acquisition)\",\"SAF/IE\":\"Assistant Secretary of the Air Force (Installations, Environment, and Logistics\",\"SAF/IG\":\"Inspector General of the Air Force\",\"SAF/LL\":\"Assistant Secretary of the Air Force (Legislative Affairs)\",\"SAF/US\":\"Under Secretary of the Air Force\",\"SAF/XC\":\"Secretary of the Air Force Directorate (Warfighting Integration and Chief Information Officer)\",\"SAM\":\"Support Agreement Manager\",\"SAMP\":\"Single Acquisition Management Plan\",\"SAO\":\"Security Assistance Organizations\",\"SAP\":\"Security Assessment Plan OR Security Assistance Program OR Special Access Program\",\"SAPCO\":\"Special Access Program Control Office\",\"SAR\":\"Security Assessment Report OR Special Access Required OR Synthetic Aperture Radar OR System Assessment Report\",\"SATAF\":\"Site Activation Task Force\",\"SATCOM\":\"Satellite Communications\",\"SATOP\":\"Security Assistance Technical Order Program\",\"SB\":\"Small Business\",\"SBIR\":\"Small Business Innovation Research\",\"SBIRS\":\"Space Based Infrared System\",\"SBIRS F/O\":\"Space Based Infrared System Follow-on\",\"SBRA\":\"Smart Bomb Rack Assembly\",\"SBSS F/O\":\"Space Based Space Surveillance Follow-On\",\"SCD\":\"System Capabilities Document\",\"SCG\":\"Security Classification Guide\",\"SCI\":\"Sensitive Compartmented Information\",\"SCM\":\"Supply Chain Manager\",\"SCO\":\"Senior Contracting Official\",\"SCP\":\"Service Cost Position\",\"SCRM\":\"Supply Chain Risk Management\",\"SCWDL\":\"Strike Common Weapon Data Link\",\"SD\":\"Standardization Document\",\"SDB\":\"Small Diameter Bomb\",\"SDD\":\"System Development and Demonstration\",\"SDO\":\"Services Designated Official\",\"SDR\":\"System Design Review\",\"SE\":\"Safety OR Support Equipment OR Systems Engineering\",\"SE/ATS\":\"Support Equipment/Automatic Test System\",\"SEAD\":\"Suppression of Enemy Air Defenses\",\"SEAM\":\"Systems Engineering Assessment Model\",\"SECAF\":\"Secretary of the Air Force\",\"SECDEF\":\"Secretary of Defense\",\"SEI\":\"Software Engineering Institute\",\"SENSR\":\"Spectrum Efficient National Surveillance Radar System\",\"SEP\":\"System Evaluation Plan OR Systems Engineering Plan\",\"SERD\":\"Support Equipment Recommendation Data\",\"SES\":\"Senior Executive Service\",\"SESAME\":\"Selected Essential Item Stockage for Availability Methodology\",\"SF\":\"Security Forces OR Standard Form\",\"SFF\":\"Small Form Fit\",\"SFR\":\"System Functional Review\",\"SIAO\":\"Senior Information Assurance Official\",\"SIGINT\":\"Signals Intelligence\",\"SII\":\"Special Interest Item\",\"SIM\":\"Serialized Item Management\",\"SIMAF\":\"Simulation and Analysis Facility\",\"SIMCERT\":\"Simulator Certification\",\"SIMVAL\":\"Simulator Validation\",\"SIO\":\"Senior Intelligence Officer\",\"SIOP-ESI\":\"Single Integrated Operational Plan-Extremely Sensitive Information\",\"SIP\":\"System Identification Profile OR System Information Profile\",\"SIPC\":\"Service Intelligence Production Centers\",\"SIPRNET\":\"Secret Internet Protocol Router Network\",\"SISSU\":\"Security, Interoperability, Supportability, Sustainability, and Usability\",\"SITREP\":\"Situational Report\",\"SLA\":\"Service Level Agreements\",\"SLAM-ER\":\"Standoff Land Attack Missile Expanded Response\",\"SLEP\":\"Service Life Extension Program\",\"SLIN\":\"Sub-Line Item Number\",\"SM\":\"Security Manager OR Service Manager OR Single Manager\",\"SMART\":\"Science, Mathematics, And Research For Transformation OR System Metrics and Reporting Tool\",\"SMC\":\"Space and Missile Systems Center\",\"SMCA\":\"Single Manager for Conventional Ammunition\",\"SME\":\"Subject Matter Expert\",\"SMI\":\"Soldier-Machine Interface\",\"SMM\":\"System Maturity Matrix\",\"SOC RPA\":\"Standardized Operations Center Remotely Piloted Aircraft\",\"SOC\":\"Statement of Capabilities\",\"SOCOM\":\"Special Operations Command\",\"SOF\":\"Special Operations Forces\",\"SOI\":\"Statement of Intent\",\"SOO\":\"Statement of Objectives\",\"SO-P\":\"Special Operations-Peculiar\",\"SOR\":\"Source of Repair\",\"SORA\":\"Source of Repair Assignment\",\"SORAP\":\"Source of Repair Assignment Process\",\"SORN\":\"System of Record Notice\",\"SoS\":\"Speed of Service OR System of Systems\",\"SOTR\":\"Sufficiency of Operational Test Review OR Sufficiency of Test Report\",\"SOW\":\"Special Operations Wing OR Statement of Work\",\"SP\":\"Security Plan OR Special Publication\",\"SPA\":\"Single Point Adjustment\",\"SPD\":\"System Program Director\",\"SPE\":\"Senior Procurement Executive\",\"SPG\":\"Strategic Planning Guidance\",\"SPM\":\"System Program Manager\",\"SPML\":\"Sustainment Program Master List\",\"SPO\":\"System Program Office\",\"SpOC\":\"Space Operations Command\",\"SPT\":\"Systems Planning Team\",\"SQL\":\"Structured Query Language\",\"SRA\":\"Schedule Risk Assessment\",\"SRB\":\"Safety Review Board\",\"SRD\":\"Software or Systems Requirements Document\",\"SRR\":\"System Requirements Review OR Systems Readiness Review\",\"SRW\":\"Soldier Radio Waveform\",\"SSA\":\"Source Selection Authority\",\"SSAA\":\"Systems Security Authorization Agreement\",\"SSAEM\":\"Space Situational Awareness-Environmental Monitoring\",\"SSD\":\"Source Selection Decision\",\"SSDD\":\"Source Selection Decision Document\",\"SSE\":\"Systems Security Engineering\",\"SSET\":\"Source Selection Evaluation Team\",\"SSM\":\"System Sustainment Manager\",\"SSN\":\"Social Security Number\",\"SSOM\":\"Standard Surveillance Operating Manual\",\"SSOR\":\"Strategic Source of Repair\",\"SSP\":\"Source Selection Plan OR System Support Package\",\"SSS\":\"Staff Summary Sheet\",\"SSWG\":\"Systems Security Working Group\",\"STA\":\"System Threat Analysis OR System Threat Assessment\",\"STAR\":\"System Threat Assessment Report\",\"STARCOM\":\"Space Training and Readiness Command\",\"STAT\":\"Scientific Test and Analysis Techniques\",\"StdV\":\"Standards Viewpoint\",\"STEP\":\"Standard for Exchange of Product\",\"STIG\":\"Security Technical Implementation Guide\",\"STINFO\":\"Scientific and Technical Information\",\"STP\":\"Space Test Program OR System Training Plan\",\"STR\":\"Sea Test Range\",\"STT\":\"Strategy-To-Task\",\"STTR\":\"Small Business Technology Transfer\",\"SUT\":\"System Under Test\",\"SV\":\"System View\",\"SVAD\":\"Survivability, Vulnerability, and Assessment Directorate\",\"SvcV\":\"Services Viewpoint\",\"SVR\":\"System Verification Review\",\"SwA\":\"Software Assurance\",\"SYSCOM\":\"Systems Command\",\"T&E ITT\":\"Test and Evaluation Integrated Test Team\",\"T&E\":\"Test and Evaluation\",\"TA\":\"Technical Advisor OR Test Area\",\"TAA\":\"Technical Airworthiness Authority\",\"TACO\":\"Test and Checkout\",\"TACP\":\"Tactical Air Control Party\",\"TACP-M\":\"Tactical Air Control Party-Modernization\",\"TASS\":\"Tactical Automated Security System\",\"TBD\":\"To Be Determined\",\"TCM-TR\":\"TRADOC Capabilities Manager-Tactical Radios\",\"TCT\":\"Total Contract Training\",\"TCTO\":\"Time Compliance Technical Order\",\"TD\":\"Test Director OR Technical Director OR Technology Development OR Technology Director\",\"TD&E\":\"Tactics Development and Evaluation\",\"TDM\":\"Test Design Manager\",\"TDP\":\"Technical Data Package\",\"TDR\":\"Test Design Requirement\",\"TDS\":\"Technology Development Strategy\",\"TDSB\":\"Test Data Scoring Board\",\"TDY\":\"Temporary Duty\",\"TE\":\"Technical Editor OR Test Evaluation\",\"TEI\":\"Text Element Identifiers\",\"TEMP\":\"Test and Evaluation Master Plan\",\"TEMPEST\":\"Transient Electromagnetic Pulse Surveillance Technology\",\"TEO\":\"Technology Executive Officers\",\"TES\":\"Test and Evaluation Strategy\",\"TFI\":\"Total Force Integration\",\"TIPT\":\"Test Integrated Product Team\",\"TIR\":\"Test Incident Report\",\"TIS\":\"Test Information Sheet\",\"TISP\":\"Tailored Information Support Plan\",\"TKA\":\"Tail Kit Assembly\",\"TLDHS\":\"Target Location, Designation, and Hand-Off System\",\"TLE\":\"Target Location Error\",\"TM\":\"Technical Manual OR Telemetry OR Test Manager\",\"TMCR\":\"Technical Manual Contract Requirement\",\"TMDE\":\"Test Measurement Diagnostic Equipment\",\"TMIPJ\":\"Theater Medical Information Program-Joint\",\"TMLA\":\"Triple Missile Launcher Adapter\",\"TMRR\":\"Technology Maturation & Risk Reduction (phase)\",\"TMSS\":\"Technical Manual Specifications and Standards\",\"TMT\":\"Task Management Tool\",\"TNMCM\":\"Total Not Mission Capable-Maintenance\",\"TNMCS\":\"Total Not Mission Capable-Supply\",\"TO\":\"Tasking Order OR Technical Order\",\"TOA\":\"Total Obligation Authority\",\"TOAC\":\"Technical Order Advisory Council\",\"TOC\":\"Tactical Operation Center OR Total Ownership Cost OR Table of Contents\",\"TODO\":\"Technical Order Distribution Office\",\"TOMA\":\"Technical Order Management Agency\",\"TPCF\":\"Test Program Case File\",\"TPM\":\"Technical Performance Measure OR Test Program Management\",\"TPP\":\"Technology Protection Plan\",\"TPS\":\"Test Program Set\",\"TPT\":\"Training Planning Team\",\"TPWG\":\"Test Plan Working Group\",\"TR\":\"Technical Review\",\"TRA\":\"Technology Readiness Assessment\",\"TRADOC\":\"Training and Doctrine Command (US Army)\",\"TRB\":\"Technical Review Board\",\"TRD\":\"Technical Requirements Document\",\"TRL\":\"Technology Readiness Level\",\"TRM\":\"Technology Reference Model OR Test Resource Manager\",\"TRMC\":\"Test Resource Management Center\",\"TRP\":\"Test Resource Plan\",\"TRR\":\"Test Readiness Review\",\"TS\":\"Test Squadron OR Top Secret\",\"TSN\":\"Trusted Systems & Networks\",\"TSP\":\"Test Support Plan OR Transfer Support Plan OR Transition Support Plan\",\"TS-PGM\":\"Training System Product Group Manager\",\"TSPI\":\"Time / Space / Position Information\",\"TSRA\":\"Training System Requirements Analysis\",\"TTCP\":\"The Technology Cooperation Program\",\"TTP\":\"Tactics, Techniques, and Procedures OR Technology Transition Plan\",\"TV\":\"Technical View\",\"TW\":\"Test Wing\",\"UAI\":\"Universal Armament\",\"UAS\":\"Unmanned Aerial Systems\",\"UAV\":\"Unmanned Aerial Vehicle\",\"UC\":\"Unified Capabilities\",\"UCA\":\"Undefinitized Contract Action\",\"UCC\":\"Unified Combatant Commander\",\"UHF\":\"Ultra-High Frequency\",\"UID\":\"Unique Identification number\",\"UIF\":\"Unfavorable Information File\",\"UII\":\"Unique Item Identifier\",\"UIPE\":\"Uniform Integrated Protection Ensemble\",\"UJTL\":\"Universal Joint Task List\",\"ULB\":\"Underwater Locator Beacon\",\"ULO\":\"Unliquidated Obligation\",\"UON\":\"Urgent Operational Need\",\"UOTT\":\"US Operational Test Team\",\"UP\":\"Unified Platform\",\"URA\":\"User Representative Agency\",\"URL\":\"Uniform Resource Locator\",\"URN\":\"Unit Reference Number\",\"USAF\":\"United States Air Force\",\"USAFWC\":\"United States Air Force Warfare Center\",\"USB\":\"Universal Serial Bus\",\"USC\":\"United States Code\",\"USD\":\"Undersecretary of Defense\",\"USecAF\":\"Under Secretary of the Air Force\",\"USMC\":\"United States Marine Corps\",\"USSF\":\"United States Space Force\",\"USSOCOM\":\"U.S. Special Operations Command\",\"UTC\":\"Coordinated Universal Time\",\"UTTR\":\"Utah Test and Training Range\",\"V&V\":\"Verification and Validation\",\"VCJCS\":\"Vice Chairman of the Joint Chiefs of Staff\",\"VCSAF\":\"Vice Chief of Staff of the United States Air Force\",\"VCSO\":\"Vice Chief of Space Operations\",\"VE\":\"Value Engineering\",\"VECP\":\"Value Engineering Change Proposal\",\"VEP\":\"Value Engineering Proposal\",\"VHF\":\"Very High Frequency\",\"VIDOC\":\"Visual Information Documentation\",\"VIM\":\"Visual Information Manager\",\"VMC\":\"Visual Meteorological Conditions\",\"VML\":\"Vulnerable to Move List\",\"VMP\":\"Vulnerability Management Process\",\"VOLT\":\"Validated Online Lifecycle Threat\",\"VPV\":\"Virtual Prime Vendor\",\"VSP\":\"Verification Status Page\",\"VSTAR\":\"Virtual System Threat Assessment Report\",\"VTC\":\"Video Teleconference\",\"VV&A\":\"Verification, Validation and Accreditation\",\"WAS\":\"Wide Area Surveillance\",\"WAWF\":\"Wide Area Workflow\",\"WBS\":\"Work Breakdown Schedule\",\"WCF\":\"Working Capital Fund\",\"WIPT\":\"Working\\u001eLevel Integrated Product Team\",\"WIT\":\"Watch Item Tracking\",\"WMA\":\"Warfighting Mission Area\",\"WMD\":\"weapons of mass destruction\",\"WRAP\":\"Warfighter Rapid Acquisition Process\",\"WS3 SLEP\":\"Weapons Storage and Security System Service Life Extension Program\",\"WSEP\":\"Weapon System Evaluation Program\",\"WSER\":\"Weapon System Enterprise Reviews\",\"WSF-EO/IR\":\"Weather Satellite Follow-on Electro-Optical /Infra-Red\",\"WSF-M\":\"Weather Satellite Follow-on Microwave\",\"WSI\":\"Weapon System Integration OR Weapon System Integrity\",\"WSIG\":\"Weapon System Integrity Guide\",\"WSIP\":\"Weapon System Integrity Program\",\"WSMR\":\"White Sands Missile Range\",\"WSSP\":\"Weapons System Support Program\",\"WX\":\"Weather\",\"XDR\":\"Extended Data Rate\",\"YTD\":\"Year to Date\"}}}],\"extensions\":[\".mdx\",\".md\"],\"defaultLayouts\":{},\"remarkPlugins\":[],\"rehypePlugins\":[],\"mediaTypes\":[\"text/markdown\",\"text/x-markdown\"]},\n },{\n plugin: require('../node_modules/gatsby-plugin-gtag/gatsby-browser.js'),\n options: {\"plugins\":[],\"trackingId\":null,\"head\":true,\"anonymize\":false},\n },{\n plugin: require('../gatsby-browser.js'),\n options: {\"plugins\":[]},\n }]\n","module.exports = __webpack_public_path__ + \"static/logo-8619e329fe17a156b627acc1b8227098.svg\";","var unitlessKeys = {\n animationIterationCount: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\nexport default unitlessKeys;","/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n * ie10 fix - Mikael Kristiansson 2019\n */\n!(function(name, definition) {\n if (typeof module != \"undefined\") module.exports = definition();\n else if (typeof define == \"function\" && typeof define.amd == \"object\")\n define(definition);\n else this[name] = definition();\n})(\"domready\", function() {\n var ie10 = false;\n if (navigator.appVersion.indexOf(\"MSIE 10\") !== -1) {\n ie10 = true;\n }\n\n var fns = [],\n listener,\n doc = typeof document === \"object\" && document,\n hack = ie10\n ? doc.documentElement.doScroll(\"left\")\n : doc.documentElement.doScroll,\n domContentLoaded = \"DOMContentLoaded\",\n loaded =\n doc && (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState);\n\n if (!loaded && doc)\n doc.addEventListener(\n domContentLoaded,\n (listener = function() {\n doc.removeEventListener(domContentLoaded, listener);\n loaded = 1;\n while ((listener = fns.shift())) listener();\n })\n );\n\n return function(fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn);\n };\n});\n","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport default murmur2;","import hashString from '@emotion/hash';\nimport unitless from '@emotion/unitless';\nimport memoize from '@emotion/memoize';\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\nvar UNDEFINED_AS_OBJECT_KEY_ERROR = \"You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).\";\nvar hyphenateRegex = /[A-Z]|^ms/g;\nvar animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;\n\nvar isCustomProperty = function isCustomProperty(property) {\n return property.charCodeAt(1) === 45;\n};\n\nvar isProcessableValue = function isProcessableValue(value) {\n return value != null && typeof value !== 'boolean';\n};\n\nvar processStyleName = memoize(function (styleName) {\n return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();\n});\n\nvar processStyleValue = function processStyleValue(key, value) {\n switch (key) {\n case 'animation':\n case 'animationName':\n {\n if (typeof value === 'string') {\n return value.replace(animationRegex, function (match, p1, p2) {\n cursor = {\n name: p1,\n styles: p2,\n next: cursor\n };\n return p1;\n });\n }\n }\n }\n\n if (unitless[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {\n return value + 'px';\n }\n\n return value;\n};\n\nif (process.env.NODE_ENV !== 'production') {\n var contentValuePattern = /(attr|calc|counters?|url)\\(/;\n var contentValues = ['normal', 'none', 'counter', 'open-quote', 'close-quote', 'no-open-quote', 'no-close-quote', 'initial', 'inherit', 'unset'];\n var oldProcessStyleValue = processStyleValue;\n var msPattern = /^-ms-/;\n var hyphenPattern = /-(.)/g;\n var hyphenatedCache = {};\n\n processStyleValue = function processStyleValue(key, value) {\n if (key === 'content') {\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n console.error(\"You seem to be using a value for 'content' without quotes, try replacing it with `content: '\\\"\" + value + \"\\\"'`\");\n }\n }\n\n var processed = oldProcessStyleValue(key, value);\n\n if (processed !== '' && !isCustomProperty(key) && key.indexOf('-') !== -1 && hyphenatedCache[key] === undefined) {\n hyphenatedCache[key] = true;\n console.error(\"Using kebab-case for css properties in objects is not supported. Did you mean \" + key.replace(msPattern, 'ms-').replace(hyphenPattern, function (str, _char) {\n return _char.toUpperCase();\n }) + \"?\");\n }\n\n return processed;\n };\n}\n\nvar shouldWarnAboutInterpolatingClassNameFromCss = true;\n\nfunction handleInterpolation(mergedProps, registered, interpolation, couldBeSelectorInterpolation) {\n if (interpolation == null) {\n return '';\n }\n\n if (interpolation.__emotion_styles !== undefined) {\n if (process.env.NODE_ENV !== 'production' && interpolation.toString() === 'NO_COMPONENT_SELECTOR') {\n throw new Error('Component selectors can only be used in conjunction with babel-plugin-emotion.');\n }\n\n return interpolation;\n }\n\n switch (typeof interpolation) {\n case 'boolean':\n {\n return '';\n }\n\n case 'object':\n {\n if (interpolation.anim === 1) {\n cursor = {\n name: interpolation.name,\n styles: interpolation.styles,\n next: cursor\n };\n return interpolation.name;\n }\n\n if (interpolation.styles !== undefined) {\n var next = interpolation.next;\n\n if (next !== undefined) {\n // not the most efficient thing ever but this is a pretty rare case\n // and there will be very few iterations of this generally\n while (next !== undefined) {\n cursor = {\n name: next.name,\n styles: next.styles,\n next: cursor\n };\n next = next.next;\n }\n }\n\n var styles = interpolation.styles + \";\";\n\n if (process.env.NODE_ENV !== 'production' && interpolation.map !== undefined) {\n styles += interpolation.map;\n }\n\n return styles;\n }\n\n return createStringFromObject(mergedProps, registered, interpolation);\n }\n\n case 'function':\n {\n if (mergedProps !== undefined) {\n var previousCursor = cursor;\n var result = interpolation(mergedProps);\n cursor = previousCursor;\n return handleInterpolation(mergedProps, registered, result, couldBeSelectorInterpolation);\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('Functions that are interpolated in css calls will be stringified.\\n' + 'If you want to have a css call based on props, create a function that returns a css call like this\\n' + 'let dynamicStyle = (props) => css`color: ${props.color}`\\n' + 'It can be called directly with props or interpolated in a styled call like this\\n' + \"let SomeComponent = styled('div')`${dynamicStyle}`\");\n }\n\n break;\n }\n\n case 'string':\n if (process.env.NODE_ENV !== 'production') {\n var matched = [];\n var replaced = interpolation.replace(animationRegex, function (match, p1, p2) {\n var fakeVarName = \"animation\" + matched.length;\n matched.push(\"const \" + fakeVarName + \" = keyframes`\" + p2.replace(/^@keyframes animation-\\w+/, '') + \"`\");\n return \"${\" + fakeVarName + \"}\";\n });\n\n if (matched.length) {\n console.error('`keyframes` output got interpolated into plain string, please wrap it with `css`.\\n\\n' + 'Instead of doing this:\\n\\n' + [].concat(matched, [\"`\" + replaced + \"`\"]).join('\\n') + '\\n\\nYou should wrap it with `css` like this:\\n\\n' + (\"css`\" + replaced + \"`\"));\n }\n }\n\n break;\n } // finalize string values (regular strings and functions interpolated into css calls)\n\n\n if (registered == null) {\n return interpolation;\n }\n\n var cached = registered[interpolation];\n\n if (process.env.NODE_ENV !== 'production' && couldBeSelectorInterpolation && shouldWarnAboutInterpolatingClassNameFromCss && cached !== undefined) {\n console.error('Interpolating a className from css`` is not recommended and will cause problems with composition.\\n' + 'Interpolating a className from css`` will be completely unsupported in a future major version of Emotion');\n shouldWarnAboutInterpolatingClassNameFromCss = false;\n }\n\n return cached !== undefined && !couldBeSelectorInterpolation ? cached : interpolation;\n}\n\nfunction createStringFromObject(mergedProps, registered, obj) {\n var string = '';\n\n if (Array.isArray(obj)) {\n for (var i = 0; i < obj.length; i++) {\n string += handleInterpolation(mergedProps, registered, obj[i], false);\n }\n } else {\n for (var _key in obj) {\n var value = obj[_key];\n\n if (typeof value !== 'object') {\n if (registered != null && registered[value] !== undefined) {\n string += _key + \"{\" + registered[value] + \"}\";\n } else if (isProcessableValue(value)) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value) + \";\";\n }\n } else {\n if (_key === 'NO_COMPONENT_SELECTOR' && process.env.NODE_ENV !== 'production') {\n throw new Error('Component selectors can only be used in conjunction with babel-plugin-emotion.');\n }\n\n if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {\n for (var _i = 0; _i < value.length; _i++) {\n if (isProcessableValue(value[_i])) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value[_i]) + \";\";\n }\n }\n } else {\n var interpolated = handleInterpolation(mergedProps, registered, value, false);\n\n switch (_key) {\n case 'animation':\n case 'animationName':\n {\n string += processStyleName(_key) + \":\" + interpolated + \";\";\n break;\n }\n\n default:\n {\n if (process.env.NODE_ENV !== 'production' && _key === 'undefined') {\n console.error(UNDEFINED_AS_OBJECT_KEY_ERROR);\n }\n\n string += _key + \"{\" + interpolated + \"}\";\n }\n }\n }\n }\n }\n }\n\n return string;\n}\n\nvar labelPattern = /label:\\s*([^\\s;\\n{]+)\\s*;/g;\nvar sourceMapPattern;\n\nif (process.env.NODE_ENV !== 'production') {\n sourceMapPattern = /\\/\\*#\\ssourceMappingURL=data:application\\/json;\\S+\\s+\\*\\//;\n} // this is the cursor for keyframes\n// keyframes are stored on the SerializedStyles object as a linked list\n\n\nvar cursor;\n\nvar serializeStyles = function serializeStyles(args, registered, mergedProps) {\n if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {\n return args[0];\n }\n\n var stringMode = true;\n var styles = '';\n cursor = undefined;\n var strings = args[0];\n\n if (strings == null || strings.raw === undefined) {\n stringMode = false;\n styles += handleInterpolation(mergedProps, registered, strings, false);\n } else {\n if (process.env.NODE_ENV !== 'production' && strings[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[0];\n } // we start at 1 since we've already handled the first arg\n\n\n for (var i = 1; i < args.length; i++) {\n styles += handleInterpolation(mergedProps, registered, args[i], styles.charCodeAt(styles.length - 1) === 46);\n\n if (stringMode) {\n if (process.env.NODE_ENV !== 'production' && strings[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[i];\n }\n }\n\n var sourceMap;\n\n if (process.env.NODE_ENV !== 'production') {\n styles = styles.replace(sourceMapPattern, function (match) {\n sourceMap = match;\n return '';\n });\n } // using a global regex with .exec is stateful so lastIndex has to be reset each time\n\n\n labelPattern.lastIndex = 0;\n var identifierName = '';\n var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5\n\n while ((match = labelPattern.exec(styles)) !== null) {\n identifierName += '-' + // $FlowFixMe we know it's not null\n match[1];\n }\n\n var name = hashString(styles) + identifierName;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe SerializedStyles type doesn't have toString property (and we don't want to add it)\n return {\n name: name,\n styles: styles,\n map: sourceMap,\n next: cursor,\n toString: function toString() {\n return \"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).\";\n }\n };\n }\n\n return {\n name: name,\n styles: styles,\n next: cursor\n };\n};\n\nexport { serializeStyles };","import { apiRunner } from \"./api-runner-browser\"\n\nif (\n window.location.protocol !== `https:` &&\n window.location.hostname !== `localhost`\n) {\n console.error(\n `Service workers can only be used over HTTPS, or on localhost for development`\n )\n} else if (`serviceWorker` in navigator) {\n navigator.serviceWorker\n .register(`${__BASE_PATH__}/sw.js`)\n .then(function (reg) {\n reg.addEventListener(`updatefound`, () => {\n apiRunner(`onServiceWorkerUpdateFound`, { serviceWorker: reg })\n // The updatefound event implies that reg.installing is set; see\n // https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event\n const installingWorker = reg.installing\n console.log(`installingWorker`, installingWorker)\n installingWorker.addEventListener(`statechange`, () => {\n switch (installingWorker.state) {\n case `installed`:\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and the fresh content will\n // have been added to the cache.\n\n // We set a flag so Gatsby Link knows to refresh the page on next navigation attempt\n window.___swUpdated = true\n // We call the onServiceWorkerUpdateReady API so users can show update prompts.\n apiRunner(`onServiceWorkerUpdateReady`, { serviceWorker: reg })\n\n // If resources failed for the current page, reload.\n if (window.___failedResources) {\n console.log(`resources failed, SW updated - reloading`)\n window.location.reload()\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a \"Content is cached for offline use.\" message.\n console.log(`Content is now available offline!`)\n\n // Post to service worker that install is complete.\n // Delay to allow time for the event listener to be added --\n // otherwise fetch is called too soon and resources aren't cached.\n apiRunner(`onServiceWorkerInstalled`, { serviceWorker: reg })\n }\n break\n\n case `redundant`:\n console.error(`The installing service worker became redundant.`)\n apiRunner(`onServiceWorkerRedundant`, { serviceWorker: reg })\n break\n\n case `activated`:\n apiRunner(`onServiceWorkerActive`, { serviceWorker: reg })\n break\n }\n })\n })\n })\n .catch(function (e) {\n console.error(`Error during service worker registration:`, e)\n })\n}\n","// prefer default export if available\nconst preferDefault = m => (m && m.default) || m\n\nexports.components = {\n \"component---src-pages-404-js\": () => import(\"./../../../src/pages/404.js\" /* webpackChunkName: \"component---src-pages-404-js\" */),\n \"component---src-templates-docs-js\": () => import(\"./../../../src/templates/docs.js\" /* webpackChunkName: \"component---src-templates-docs-js\" */)\n}\n\n","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","'use strict';\n\nmodule.exports = function (url) {\n if (typeof url !== 'string') {\n throw new TypeError(\"Expected a `string`, got `\".concat(typeof url, \"`\"));\n } // Don't match Windows paths `c:\\`\n\n\n if (/^[a-zA-Z]:\\\\/.test(url)) {\n return false;\n } // Scheme: https://tools.ietf.org/html/rfc3986#section-3.1\n // Absolute URL: https://tools.ietf.org/html/rfc3986#section-4.3\n\n\n return /^[a-zA-Z][a-zA-Z\\d+\\-.]*:/.test(url);\n};","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","// Converted automatically using ./tools/themeFromVsCode\nvar theme = {\n plain: {\n color: \"#9CDCFE\",\n backgroundColor: \"#1E1E1E\"\n },\n styles: [{\n types: [\"prolog\"],\n style: {\n color: \"rgb(0, 0, 128)\"\n }\n }, {\n types: [\"comment\"],\n style: {\n color: \"rgb(106, 153, 85)\"\n }\n }, {\n types: [\"builtin\", \"changed\", \"keyword\"],\n style: {\n color: \"rgb(86, 156, 214)\"\n }\n }, {\n types: [\"number\", \"inserted\"],\n style: {\n color: \"rgb(181, 206, 168)\"\n }\n }, {\n types: [\"constant\"],\n style: {\n color: \"rgb(100, 102, 149)\"\n }\n }, {\n types: [\"attr-name\", \"variable\"],\n style: {\n color: \"rgb(156, 220, 254)\"\n }\n }, {\n types: [\"deleted\", \"string\", \"attr-value\"],\n style: {\n color: \"rgb(206, 145, 120)\"\n }\n }, {\n types: [\"selector\"],\n style: {\n color: \"rgb(215, 186, 125)\"\n }\n }, {\n // Fix tag color\n types: [\"tag\"],\n style: {\n color: \"rgb(78, 201, 176)\"\n }\n }, {\n // Fix tag color for HTML\n types: [\"tag\"],\n languages: [\"markup\"],\n style: {\n color: \"rgb(86, 156, 214)\"\n }\n }, {\n types: [\"punctuation\", \"operator\"],\n style: {\n color: \"rgb(212, 212, 212)\"\n }\n }, {\n // Fix punctuation color for HTML\n types: [\"punctuation\"],\n languages: [\"markup\"],\n style: {\n color: \"#808080\"\n }\n }, {\n types: [\"function\"],\n style: {\n color: \"rgb(220, 220, 170)\"\n }\n }, {\n types: [\"class-name\"],\n style: {\n color: \"rgb(78, 201, 176)\"\n }\n }, {\n types: [\"char\"],\n style: {\n color: \"rgb(209, 105, 105)\"\n }\n }]\n};\nexport default theme;","import * as React from 'react';\n\nconst LoadingProvider = ({ ...props }) => {\n return
;\n};\n\nexport default LoadingProvider;\n","import * as React from 'react';\nimport Highlight, { defaultProps } from 'prism-react-renderer';\nimport prismTheme from 'prism-react-renderer/themes/vsDark';\nimport Loadable from 'react-loadable';\nimport LoadingProvider from './loading';\n\n/** Removes the last token from a code example if it's empty. */\nfunction cleanTokens(tokens) {\n const tokensLength = tokens.length;\n\n if (tokensLength === 0) {\n return tokens;\n }\n const lastToken = tokens[tokensLength - 1];\n\n if (lastToken.length === 1 && lastToken[0].empty) {\n return tokens.slice(0, tokensLength - 1);\n }\n return tokens;\n}\n\nconst LoadableComponent = Loadable({\n loader: () => import('./LiveProvider'),\n loading: LoadingProvider,\n});\n\n/* eslint-disable react/jsx-key */\nconst CodeBlock = ({ children: exampleCode, ...props }) => {\n if (props['react-live']) {\n return ;\n } else {\n return (\n \n {({ className, style, tokens, getLineProps, getTokenProps }) => (\n
\n            {cleanTokens(tokens).map((line, i) => {\n              let lineClass = {};\n\n              let isDiff = false;\n\n              if (line[0] && line[0].content.length && line[0].content[0] === '+') {\n                lineClass = { backgroundColor: 'rgba(76, 175, 80, 0.2)' };\n                isDiff = true;\n              } else if (line[0] && line[0].content.length && line[0].content[0] === '-') {\n                lineClass = { backgroundColor: 'rgba(244, 67, 54, 0.2)' };\n                isDiff = true;\n              } else if (line[0] && line[0].content === '' && line[1] && line[1].content === '+') {\n                lineClass = { backgroundColor: 'rgba(76, 175, 80, 0.2)' };\n                isDiff = true;\n              } else if (line[0] && line[0].content === '' && line[1] && line[1].content === '-') {\n                lineClass = { backgroundColor: 'rgba(244, 67, 54, 0.2)' };\n                isDiff = true;\n              }\n              const lineProps = getLineProps({ line, key: i });\n\n              lineProps.style = lineClass;\n              const diffStyle = {\n                userSelect: 'none',\n                MozUserSelect: '-moz-none',\n                WebkitUserSelect: 'none',\n              };\n\n              let splitToken;\n\n              return (\n                
\n {line.map((token, key) => {\n if (isDiff) {\n if (\n (key === 0 || key === 1) &\n (token.content.charAt(0) === '+' || token.content.charAt(0) === '-')\n ) {\n if (token.content.length > 1) {\n splitToken = {\n types: ['template-string', 'string'],\n content: token.content.slice(1),\n };\n const firstChar = {\n types: ['operator'],\n content: token.content.charAt(0),\n };\n\n return (\n \n \n \n \n );\n } else {\n return ;\n }\n }\n }\n return ;\n })}\n
\n );\n })}\n
\n )}\n
\n );\n }\n};\n\nexport default CodeBlock;\n","import * as React from 'react';\n\nconst AnchorTag = ({ children: link, ...props }) => {\n if (link) {\n return (\n \n {link}\n \n );\n } else {\n return null;\n }\n};\n\nexport default AnchorTag;\n","import React from 'react';\nimport styled from '@emotion/styled';\n\nimport CodeBlock from './codeBlock';\nimport AnchorTag from './anchor';\n\nconst StyledPre = styled('pre')`\n padding: 16px;\n background: ${props => props.theme.colors.preFormattedText};\n`;\n\nexport default {\n h1: props => (\n

\n ),\n p: props =>

,\n pre: props => (\n \n

\n    \n  ),\n  code: CodeBlock,\n  a: AnchorTag,\n  // TODO add `img`\n  // TODO add `blockquote`\n  // TODO add `ul`\n  // TODO add `li`\n  // TODO add `table`\n};\n\n\n/*\n\n  h2: props => (\n    

\n ),\n h3: props => (\n

\n ),\n h4: props => (\n

\n ),\n h5: props => (\n

\n ),\n h6: props => (\n
\n ),\n */","import _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport React__default, { createElement, forwardRef } from 'react';\nimport { ThemeContext } from '@emotion/core';\nimport weakMemoize from '@emotion/weak-memoize';\nimport _extends from '@babel/runtime/helpers/extends';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(source, true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(source).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _objectSpread({}, outerTheme, {}, theme);\n};\n\nvar createCacheWithTheme = weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\n\nvar ThemeProvider = function ThemeProvider(props) {\n return createElement(ThemeContext.Consumer, null, function (theme) {\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n });\n}; // should we change this to be forwardRef/withCSSContext style so it doesn't merge with props?\n\n\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n return createElement(ThemeContext.Consumer, null, function (theme) {\n return createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n });\n }; // $FlowFixMe\n\n\n var WithTheme = forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nfunction useTheme() {\n return React__default.useContext(ThemeContext);\n}\n\nexport { ThemeProvider, useTheme, withTheme };","const baseTheme = {\n fonts: {\n mono: '\"SF Mono\", \"Roboto Mono\", Menlo, monospace',\n },\n};\n\nconst lightTheme = {\n ...baseTheme,\n colors: {\n background: '#fff',\n heading: '#000',\n text: '#3B454E',\n preFormattedText: 'rgb(245, 247, 249)',\n link: '#1000EE',\n },\n};\n\nconst darkTheme = {\n ...baseTheme,\n colors: {\n background: '#001933',\n heading: '#fff',\n text: '#fff',\n preFormattedText: '#000',\n link: '#2dc4f3',\n },\n};\n\nexport { lightTheme, darkTheme };\n","import React from 'react';\nimport { Link as GatsbyLink } from 'gatsby';\nimport isAbsoluteUrl from 'is-absolute-url';\n\nconst Link = ({ to, ...props }) =>\n isAbsoluteUrl(to) ? (\n \n {props.children}\n \n ) : (\n \n );\n\nexport default Link;\n","import React from 'react';\nimport styled from '@emotion/styled';\n\nimport NightImage from './images/night.png';\nimport DayImage from './images/day.png';\n\nconst StyledSwitch = styled('div')`\n display: flex;\n justify-content: flex-end;\n width: 100%;\n padding: 0 20px 0 25px;\n\n /* The switch - the box around the slider */\n .switch {\n position: relative;\n display: inline-block;\n width: 50px;\n height: 20px;\n }\n\n /* Hide default HTML checkbox */\n .switch input {\n opacity: 0;\n width: 0;\n height: 0;\n }\n\n /* The slider */\n .slider {\n position: absolute;\n cursor: pointer;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: #ccc;\n -webkit-transition: 0.4s;\n transition: 0.4s;\n }\n\n .slider:before {\n position: absolute;\n content: '';\n height: 30px;\n width: 30px;\n left: 0px;\n bottom: 4px;\n top: 0;\n bottom: 0;\n margin: auto 0;\n -webkit-transition: 0.4s;\n transition: 0.4s;\n box-shadow: 0 0px 15px #2020203d;\n background: white url(${NightImage});\n background-repeat: no-repeat;\n background-position: center;\n }\n\n input:checked + .slider {\n background: linear-gradient(to right, #fefb72, #f0bb31);\n }\n\n input:checked + .slider:before {\n -webkit-transform: translateX(24px);\n -ms-transform: translateX(24px);\n transform: translateX(24px);\n background: white url(${DayImage});\n background-repeat: no-repeat;\n background-position: center;\n }\n\n /* Rounded sliders */\n .slider.round {\n border-radius: 34px;\n }\n\n .slider.round:before {\n border-radius: 50%;\n }\n`;\n\nexport const DarkModeSwitch = ({ isDarkThemeActive, toggleActiveTheme }) => (\n \n \n \n);\n","import React from 'react';\n\nconst OpenedSvg = () => (\n \n \n \n);\n\nexport default OpenedSvg;\n","import React from 'react';\n\nconst ClosedSvg = () => (\n \n \n \n);\n\nexport default ClosedSvg;\n","import React from 'react';\nimport OpenedSvg from '../images/opened';\nimport ClosedSvg from '../images/closed';\nimport config from '../../../config';\nimport Link from '../link';\n\nconst TreeNode = ({ className = '', setCollapsed, collapsed, url, title, items, ...rest }) => {\n const isCollapsed = collapsed[url];\n\n const collapse = () => {\n setCollapsed(url);\n };\n\n const hasChildren = items.length !== 0;\n\n let location;\n\n if (typeof document != 'undefined') {\n location = document.location;\n }\n const active =\n location && (location.pathname === url || location.pathname === config.gatsby.pathPrefix + url);\n\n const calculatedClassName = `${className} item ${active ? 'active' : ''}`;\n\n return (\n
  • \n {title && (\n \n {title}\n {!config.sidebar.frontLine && title && hasChildren ? (\n \n ) : null}\n \n )}\n\n {!isCollapsed && hasChildren ? (\n
      \n {items.map((item, index) => (\n \n ))}\n
    \n ) : null}\n
  • \n );\n};\n\nexport default TreeNode;\n","import React, { useState } from 'react';\nimport config from '../../../config';\nimport TreeNode from './treeNode';\n\nconst calculateTreeData = edges => {\n const originalData = config.sidebar.ignoreIndex\n ? edges.filter(\n ({\n node: {\n fields: { slug },\n },\n }) => slug !== '/'\n )\n : edges;\n\n const tree = originalData.reduce(\n (\n accu,\n {\n node: {\n fields: { slug, title },\n },\n }\n ) => {\n const parts = slug.split('/');\n\n let { items: prevItems } = accu;\n\n const slicedParts =\n config.gatsby && config.gatsby.trailingSlash ? parts.slice(1, -2) : parts.slice(1, -1);\n\n for (const part of slicedParts) {\n let tmp = prevItems && prevItems.find(({ label }) => label == part);\n\n if (tmp) {\n if (!tmp.items) {\n tmp.items = [];\n }\n } else {\n tmp = { label: part, items: [] };\n prevItems.push(tmp);\n }\n prevItems = tmp.items;\n }\n const slicedLength =\n config.gatsby && config.gatsby.trailingSlash ? parts.length - 2 : parts.length - 1;\n\n const existingItem = prevItems.find(({ label }) => label === parts[slicedLength]);\n\n if (existingItem) {\n existingItem.url = slug;\n existingItem.title = title;\n } else {\n prevItems.push({\n label: parts[slicedLength],\n url: slug,\n items: [],\n title,\n });\n }\n return accu;\n },\n { items: [] }\n );\n\n const {\n sidebar: { forcedNavOrder = [] },\n } = config;\n\n const tmp = [...forcedNavOrder];\n\n if (config.gatsby && config.gatsby.trailingSlash) {\n }\n tmp.reverse();\n return tmp.reduce((accu, slug) => {\n const parts = slug.split('/');\n\n let { items: prevItems } = accu;\n\n const slicedParts =\n config.gatsby && config.gatsby.trailingSlash ? parts.slice(1, -2) : parts.slice(1, -1);\n\n for (const part of slicedParts) {\n let tmp = prevItems.find(item => item && item.label == part);\n\n if (tmp) {\n if (!tmp.items) {\n tmp.items = [];\n }\n } else {\n tmp = { label: part, items: [] };\n prevItems.push(tmp);\n }\n if (tmp && tmp.items) {\n prevItems = tmp.items;\n }\n }\n // sort items alphabetically.\n prevItems.map(item => {\n item.items = item.items.sort(function(a, b) {\n if (a.label < b.label) return -1;\n if (a.label > b.label) return 1;\n return 0;\n });\n });\n const slicedLength =\n config.gatsby && config.gatsby.trailingSlash ? parts.length - 2 : parts.length - 1;\n\n const index = prevItems.findIndex(({ label }) => label === parts[slicedLength]);\n\n if (prevItems.length) {\n accu.items.unshift(prevItems.splice(index, 1)[0]);\n }\n return accu;\n }, tree);\n};\n\nconst Tree = ({ edges }) => {\n let [treeData] = useState(() => {\n return calculateTreeData(edges);\n });\n\n const defaultCollapsed = {};\n\n treeData.items.forEach(item => {\n if (config.sidebar.collapsedNav && config.sidebar.collapsedNav.includes(item.url)) {\n defaultCollapsed[item.url] = true;\n } else {\n defaultCollapsed[item.url] = false;\n }\n });\n const [collapsed, setCollapsed] = useState(defaultCollapsed);\n\n const toggle = url => {\n setCollapsed({\n ...collapsed,\n [url]: !collapsed[url],\n });\n };\n\n return (\n \n );\n};\n\nexport default Tree;\n","function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nimport React, { forwardRef } from 'react';\nvar ExternalLink = forwardRef(function (_ref, ref) {\n var _ref$color = _ref.color,\n color = _ref$color === void 0 ? 'currentColor' : _ref$color,\n _ref$size = _ref.size,\n size = _ref$size === void 0 ? 24 : _ref$size,\n rest = _objectWithoutProperties(_ref, [\"color\", \"size\"]);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n ref: ref,\n xmlns: \"http://www.w3.org/2000/svg\",\n width: size,\n height: size,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: color,\n strokeWidth: \"2\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }, rest), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"\n }), /*#__PURE__*/React.createElement(\"polyline\", {\n points: \"15 3 21 3 21 9\"\n }), /*#__PURE__*/React.createElement(\"line\", {\n x1: \"10\",\n y1: \"14\",\n x2: \"21\",\n y2: \"3\"\n }));\n});\nExternalLink.displayName = 'ExternalLink';\nexport default ExternalLink;","import React from 'react';\nimport Tree from './tree';\nimport { StaticQuery, graphql } from 'gatsby';\nimport styled from '@emotion/styled';\nimport { ExternalLink } from 'react-feather';\nimport config from '../../../config';\n\n// eslint-disable-next-line no-unused-vars\nconst ListItem = styled(({ className, active, level, ...props }) => {\n return (\n
  • \n \n {props.children}\n \n
  • \n );\n})`\n list-style: none;\n\n a {\n color: #5c6975;\n text-decoration: none;\n font-weight: ${({ level }) => (level === 0 ? 700 : 400)};\n padding: 0.45rem 0 0.45rem ${props => 2 + (props.level || 0) * 1}rem;\n display: block;\n position: relative;\n\n &:hover {\n color: #2dc4f3 !important;\n }\n\n ${props =>\n props.active &&\n `\n // color: #663399;\n border-color: rgb(230,236,241) !important;\n border-style: solid none solid solid;\n border-width: 1px 0px 1px 1px;\n background-color: #fff;\n `} // external link icon\n svg {\n float: right;\n margin-right: 1rem;\n }\n }\n`;\n\nconst Sidebar = styled('aside')`\n width: 100%;\n height: 100vh;\n overflow: auto;\n position: fixed;\n padding-left: 0px;\n position: -webkit-sticky;\n position: -moz-sticky;\n position: sticky;\n top: 0;\n padding-right: 0;\n -webkit-box-shadow: -1px 0px 4px 1px rgba(175, 158, 232, 0.4);\n\n @media only screen and (max-width: 1023px) {\n width: 100%;\n /* position: relative; */\n height: 100vh;\n }\n\n @media (min-width: 767px) and (max-width: 1023px) {\n padding-left: 0;\n }\n\n @media only screen and (max-width: 767px) {\n padding-left: 0px;\n height: auto;\n }\n`;\n\nconst Divider = styled(props => (\n
  • \n
    \n
  • \n))`\n list-style: none;\n padding: 0.5rem 0;\n\n hr {\n margin: 0;\n padding: 0;\n border: 0;\n border-bottom: 1px solid #ede7f3;\n }\n`;\n\nconst SidebarLayout = ({ location }) => (\n {\n return (\n \n {config.sidebar.title ? (\n \n ) : null}\n
      \n \n {config.sidebar.links && config.sidebar.links.length > 0 && }\n {config.sidebar.links.map((link, key) => {\n if (link.link !== '' && link.text !== '') {\n return (\n \n {link.text}\n \n \n );\n }\n })}\n
    \n
    \n );\n }}\n />\n);\n\nexport default SidebarLayout;\n","import React from 'react';\nimport styled from '@emotion/styled';\nimport { StaticQuery, graphql } from 'gatsby';\nimport Link from './link';\nimport Loadable from 'react-loadable';\n\nimport config from '../../config.js';\nimport LoadingProvider from './mdxComponents/loading';\nimport { DarkModeSwitch } from './DarkModeSwitch';\n\nconst help = require('./images/help.svg');\n\nconst isSearchEnabled = config.header.search && config.header.search.enabled ? true : false;\n\nlet searchIndices = [];\n\nif (isSearchEnabled && config.header.search.indexName) {\n searchIndices.push({\n name: `${config.header.search.indexName}`,\n title: `Results`,\n hitComp: `PageHit`,\n });\n}\n\nimport Sidebar from './sidebar';\n\nconst LoadableComponent = Loadable({\n loader: () => import('./search/index'),\n loading: LoadingProvider,\n});\n\nfunction myFunction() {\n var x = document.getElementById('navbar');\n\n if (x.className === 'topnav') {\n x.className += ' responsive';\n } else {\n x.className = 'topnav';\n }\n}\n\nconst StyledBgDiv = styled('div')`\n height: 60px;\n box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);\n background-color: #f8f8f8;\n position: relative;\n display: none;\n background: ${props => (props.isDarkThemeActive ? '#001932' : undefined)};\n\n @media (max-width: 767px) {\n display: block;\n }\n`;\n\nconst Header = ({ location, isDarkThemeActive, toggleActiveTheme }) => (\n {\n const logoImg = require('./images/logo.svg');\n\n const twitter = require('./images/twitter.svg');\n\n const discordBrandsBlock = require('./images/discord-brands-block.svg');\n\n const twitterBrandsBlock = require('./images/twitter-brands-block.svg');\n\n const {\n site: {\n siteMetadata: { headerTitle, helpUrl, tweetText, logo, headerLinks },\n },\n } = data;\n\n const finalLogoLink = logo.link !== '' ? logo.link : 'https://www.afotec.af.mil/';\n\n return (\n
    \n \n \n
    \n \n \n \n \n \n
    \n {isSearchEnabled ? (\n
    \n \n
    \n ) : null}\n
    \n
    \n );\n }}\n />\n);\n\nexport default Header;\n","import createCache from '@emotion/cache';\nimport { serializeStyles } from '@emotion/serialize';\nimport { getRegisteredStyles, insertStyles } from '@emotion/utils';\n\nfunction insertWithoutScoping(cache, serialized) {\n if (cache.inserted[serialized.name] === undefined) {\n return cache.insert('', serialized, cache.sheet, true);\n }\n}\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar createEmotion = function createEmotion(options) {\n var cache = createCache(options); // $FlowFixMe\n\n cache.sheet.speedy = function (value) {\n if (process.env.NODE_ENV !== 'production' && this.ctr !== 0) {\n throw new Error('speedy must be changed before any rules are inserted');\n }\n\n this.isSpeedy = value;\n };\n\n cache.compat = true;\n\n var css = function css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered, undefined);\n insertStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var keyframes = function keyframes() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n var animation = \"animation-\" + serialized.name;\n insertWithoutScoping(cache, {\n name: serialized.name,\n styles: \"@keyframes \" + animation + \"{\" + serialized.styles + \"}\"\n });\n return animation;\n };\n\n var injectGlobal = function injectGlobal() {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n insertWithoutScoping(cache, serialized);\n };\n\n var cx = function cx() {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n return {\n css: css,\n cx: cx,\n injectGlobal: injectGlobal,\n keyframes: keyframes,\n hydrate: function hydrate(ids) {\n ids.forEach(function (key) {\n cache.inserted[key] = true;\n });\n },\n flush: function flush() {\n cache.registered = {};\n cache.inserted = {};\n cache.sheet.flush();\n },\n // $FlowFixMe\n sheet: cache.sheet,\n cache: cache,\n getRegisteredStyles: getRegisteredStyles.bind(null, cache.registered),\n merge: merge.bind(null, cache.registered, css)\n };\n};\n\nvar classnames = function classnames(args) {\n var cls = '';\n\n for (var i = 0; i < args.length; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nexport default createEmotion;","import createEmotion from 'create-emotion';\n\nvar _createEmotion = createEmotion(),\n flush = _createEmotion.flush,\n hydrate = _createEmotion.hydrate,\n cx = _createEmotion.cx,\n merge = _createEmotion.merge,\n getRegisteredStyles = _createEmotion.getRegisteredStyles,\n injectGlobal = _createEmotion.injectGlobal,\n keyframes = _createEmotion.keyframes,\n css = _createEmotion.css,\n sheet = _createEmotion.sheet,\n cache = _createEmotion.cache;\n\nexport { cache, css, cx, flush, getRegisteredStyles, hydrate, injectGlobal, keyframes, merge, sheet };","import { injectGlobal } from 'emotion';\n\nexport const baseStyles = injectGlobal`\n @import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap');\n @import url('https://fonts.googleapis.com/css?family=Poppins:300,400,500,600&display=swap');\n * {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n font-display: swap;\n }\n ::-webkit-input-placeholder {\n /* Edge */\n color: #c2c2c2;\n }\n\n :-ms-input-placeholder {\n /* Internet Explorer */\n color: #c2c2c2;\n }\n\n ::placeholder {\n color: #c2c2c2;\n }\n html,\n body {\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Roboto Light', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif,\n 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\n\n font-size: 16px;\n scroll-behavior: smooth;\n }\n\n a {\n transition: color 0.15s;\n /* color: #663399; */\n }\n\n body {\n font-family: 'Roboto';\n }\n .visibleMobile {\n display: none;\n }\n .visibleMobileView {\n display: none !important;\n }\n .video-responsive {\n position: relative;\n padding-bottom: 56.2%;\n }\n a {\n text-decoration: none;\n }\n a:hover {\n text-decoration: none;\n }\n .displayInline {\n display: inline-block;\n }\n .navBarToggle {\n border: 0px solid #fff;\n border-radius: 4px;\n width: 36px;\n height: 33px;\n position: absolute;\n right: 20px;\n padding: 8px 5px;\n display: none;\n }\n .navBarToggle .iconBar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n margin: 0 auto;\n margin-top: 4px;\n background-color: #001934;\n }\n .navBarToggle .iconBar:first-child {\n margin-top: 0px;\n }\n\n\n.mobileScrollUpButton {\n display: none !important;\n position: fixed;\n left: 0;\n bottom: 5px;\n background-color: #2dc4f3;\n border: none;\n outline: none;\n color: white;\n padding: 15px;\n text-align: center;\n text-decoration: none;\n display: inline-block;\n font-size: 16px;\n border-radius: 25px;\n }\n\n .fade {\n display: block !important;\n -webkit-animation: fadein 300ms linear forwards;\n animation: fadein 300ms linear forwards;\n }\n\n @keyframes darkenThenLightenButton {\n 0% {brightness: 100% }\n 50% {brightness: 75% }\n 100% { brightness: 100% }\n }\n\n @keyframes fadein {\n 0% { opacity: 0; }\n 100% { opacity: 1; }\n }\n\n .video-responsive iframe {\n position: absolute;\n width: 100%;\n height: 100%;\n }\n\n .diffNewLine {\n color: #22863a;\n background-color: #f0fff4;\n }\n\n .diffRemoveLine {\n color: red;\n background-color: #ffcccc;\n }\n .navBarParent {\n width: 100%;\n float: left;\n display: flex;\n align-items: center;\n }\n .divider {\n height: 30px;\n margin: 0 15px;\n border-right: 1px solid rgba(255, 255, 255, 0.3);\n }\n .navBarULRight {\n /* position: absolute;\n right: 30px; */\n }\n\n .navbar-default .navbar-toggle .icon-bar {\n background-color: #fff !important;\n }\n\n .navbar-default .navbar-toggle:focus,\n .navbar-default .navbar-toggle:hover {\n background-color: #001933;\n }\n\n .headerWrapper {\n border-bottom: 1px solid rgb(212, 218, 223);\n box-shadow: rgba(116, 129, 141, 0.1) 0px 1px 1px 0px;\n display: flex;\n align-items: center;\n }\n .formElement {\n background-color: transparent;\n padding: 4px;\n border-radius: 5px;\n position: relative;\n }\n .formElement:focus {\n outline: none;\n border: none;\n }\n .formElement svg path {\n fill: #2fd2c5;\n }\n .searchInput {\n width: 100%;\n background-color: rgba(28,211,198,.12) !important;\n border-width: 0 !important;\n color: #C2C2C2;\n padding: 10px;\n border-radius: 5px;\n color: #fff;\n opacity: .6;\n padding-left: 38px;\n max-width: 600px;\n }\n .searchInput:focus,\n .searchInput:visited,\n .searchInput:hover,\n .searchInput:focus-within {\n outline: none;\n border: 0;\n }\n .searchWrapper {\n padding-left: 40px;\n padding-right: 20px;\n flex: 1;\n position: relative;\n }\n .searchWrapper a {\n font-weight: 500;\n }\n .hitWrapper {\n background-color: #fff;\n padding: 0.7em 1em 0.4em;\n border-radius: 4px;\n position: absolute;\n width: 80vw;\n max-width: 30em;\n top: 40px;\n border: 1px solid #ccc;\n box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.16);\n height: auto;\n max-height: 80vh;\n overflow: scroll;\n left: 0;\n }\n .hitWrapper ul li {\n margin-top: 0.7em;\n padding-top: 0.7em;\n border-top: 1px solid;\n list-style-type: none;\n }\n .hitWrapper ul li:first-child {\n border-top: 0px;\n margin-top: 0px;\n color: black !important;\n padding: 0px;\n }\n .showResults {\n display: block;\n }\n .hideResults {\n display: none;\n }\n .hitWrapper span {\n color: black;\n font-size: 14px;\n }\n .headerTitle {\n height: auto;\n font-size: 21px;\n line-height: 1.5;\n font-weight: 300;\n color: #fff !important;\n text-transform: uppercase;\n }\n .headerTitle a {\n color: #fff;\n }\n\n .headerTitle a:hover {\n text-decoration: none;\n opacity: 0.8;\n }\n .logoWrapper {\n padding: 21px 0;\n padding-left: 20px;\n }\n\n .logoContent {\n font-family: 'Roboto';\n margin-left: 16px;\n font-size: 28px;\n line-height: 1.5;\n font-weight: 500;\n padding-right: 10px;\n }\n\n .headerTitleReleasable {\n padding-right: 20px;\n height: auto;\n font-size: 10px;\n line-height: 1.5;\n font-weight: 300;\n color: #fff !important;\n text-transform: uppercase;\n }\n\n /* Header section starts here */\n .removePadd {\n padding: 0 !important;\n }\n .navBarDefault {\n background-color: #001934;\n border-radius: 0;\n border-top: 0;\n margin-bottom: 0;\n border: 0;\n display: flex;\n align-items: center;\n box-shadow: -1px 0px 4px 1px rgba(175, 158, 232, 0.4);\n -webkit-box-shadow: -1px 0px 4px 1px rgba(175, 158, 232, 0.4);\n -moz-box-shadow: -1px 0px 4px 1px rgba(175, 158, 232, 0.8);\n -o-box-shadow: -1px 0px 4px 1px rgba(175, 158, 232, 0.4);\n z-index: 1;\n padding: 15px;\n position: relative;\n height: 80px;\n }\n .navBarHeader {\n min-width: 335px;\n padding-right: 20px;\n display: flex;\n align-items: center;\n }\n .navBarBrand {\n padding: 0px 0px;\n display: flex;\n align-items: center;\n }\n .navBarBrand img {\n width: 55px;\n margin-right: 20px;\n display: inline-block;\n }\n .navBarUL li {\n list-style-type: none;\n }\n .navBarUL {\n -webkit-overflow-scrolling: touch;\n }\n .navBarUL li a {\n font-family: 'Roboto';\n color: #fff !important;\n font-size: 16px;\n font-weight: 500;\n line-height: 1em;\n opacity: 1;\n padding: 10px 15px;\n }\n .navBarNav {\n display: flex;\n align-items: center;\n }\n .navBarUL li a img,\n .navBarUL li a .shareIcon {\n width: 20px;\n }\n .navBarUL li a:hover {\n opacity: 0.7;\n }\n pre {\n border: 0 !important;\n background-color: rgb(245, 247, 249); /* !important; */\n }\n\n blockquote {\n color: rgb(116, 129, 141);\n margin: 0px 0px 24px;\n padding: 0px 0px 0px 12px;\n border-left: 4px solid rgb(230, 236, 241);\n border-color: rgb(230, 236, 241);\n }\n .socialWrapper {\n display: flex;\n align-items: center;\n }\n .socialWrapper li {\n display: inline-block;\n }\n .socialWrapper li a {\n display: contents;\n }\n .discordBtn, .twitterBtn {\n border-radius: 4px;\n border: solid 1px #d1d2d3;\n background-color: #f1f5f8;\n width: 20px;\n height: 20px;\n padding-top: 2px;\n margin-left: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: .8;\n cursor: pointer;\n }\n .twitterBtn img {\n width: 12px !important;\n }\n .discordBtn img {\n width: 10px !important;\n }\n .discordBtn:hover, .twitterBtn:hover {\n opacity: 1;\n }\n .discordBtn {\n img {\n width: 10px;\n }\n }\n .goHomeLink {\n margin-top: 5%;\n }\n /* Header section ends here */\n .sidebarTitle {\n /* box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16); */\n background-color: #f8f8f8;\n padding: 18px 16px;\n font-family: 'Poppins';\n font-size: 18px;\n font-weight: 600;\n color: #001934;\n display: flex;\n align-items: center;\n }\n\n .sideBarShow {\n display: none;\n }\n\n .sidebarTitle a {\n color: #001934;\n }\n\n .greenCircle {\n width: 8px;\n height: 8px;\n background-color: #1cd3c6;\n border-radius: 50%;\n margin: 0 12px;\n }\n\n .headerNav {\n font-family: 'Roboto';\n padding: 0px 24px;\n color: #001933;\n font-size: 16px;\n font-weight: 500;\n line-height: 1em;\n }\n\n .headerNav a {\n color: #001933;\n text-decoration: none;\n }\n\n .headerNav a:hover {\n text-decoration: none;\n }\n\n .logoWrapper img {\n width: 40px;\n }\n\n .sideBarUL {\n margin-top: 32px;\n }\n\n .sideBarUL li {\n list-style-type: none;\n width: auto;\n }\n\n .sideBarUL li a {\n /* color: #fff; */\n font-size: 14px;\n font-weight: 500;\n line-height: 1.5;\n padding: 7px 24px 7px 16px;\n padding-left: 10px;\n padding-right: 25px;\n border-style: solid none solid solid;\n border-width: 1px 0px 1px 1px;\n border-color: transparent currentcolor transparent transparent;\n }\n\n .hideFrontLine .collapser {\n background: transparent;\n border: none;\n outline: none;\n position: absolute;\n right: 20px;\n z-index: 1;\n cursor: pointer;\n }\n\n .hideFrontLine .active > a {\n background-color: #2dc4f3;\n color: #fff !important;\n }\n .firstLevel ul li .collapser svg path {\n fill: #fff !important;\n }\n .active .collapser > svg > path {\n fill: #001933 !important;\n }\n\n .firstLevel ul .item ul .item {\n border-left: 1px solid #e6ecf1;\n }\n\n .sideBarUL .item {\n list-style: none;\n padding: 0;\n }\n\n .sideBarUL .item > a {\n color: #2dc4f3;\n text-decoration: none;\n display: flex;\n align-items: center;\n position: relative;\n width: 100%;\n padding-right: 35px;\n padding-left: 15px;\n }\n\n .showFrontLine .item > a:hover {\n background-color: #001933;\n }\n\n .showFrontLine .active > a {\n /* color: #fff; */\n background-color: #001933;\n }\n\n .sideBarUL .item .item {\n margin-left: 16px;\n }\n\n .firstLevel > ul > .item {\n margin-left: 0 !important;\n }\n\n .showFrontLine .item .item {\n border-left: 1px solid #e6ecf1;\n border-left-color: rgb(230, 236, 241);\n padding: 0;\n width: calc(100% - 16px) !important;\n }\n\n .showFrontLine .item .active > a {\n border-color: rgb(230, 236, 241) !important;\n border-style: solid none solid solid;\n border-width: 1px 0px 1px 1px;\n background-color: #2dc4f3 !important;\n color: #fff;\n }\n\n .titleWrapper {\n display: flex;\n align-items: center;\n padding-bottom: 40px;\n border-bottom: 1px solid rgb(230, 236, 241);\n margin-bottom: 32px;\n }\n\n .gitBtn {\n height: 30px;\n min-height: 30px;\n display: flex;\n align-items: center;\n }\n\n .gitBtn img {\n width: 15px;\n display: inline-block;\n margin-right: 5px;\n }\n\n .addPaddTopBottom {\n padding: 50px 0;\n }\n\n .preRightWrapper {\n display: block;\n margin: 0px;\n flex: 1 1 0%;\n padding: 16px;\n text-align: right;\n }\n\n .smallContent {\n display: block;\n margin: 0px;\n padding: 0px;\n color: #6e6e6e;\n }\n\n .smallContent span {\n font-size: 12px;\n line-height: 1.625;\n font-weight: 400;\n }\n\n /* **************************** */\n\n .nextRightWrapper {\n display: block;\n margin: 0px;\n padding: 16px;\n flex: 1 1 0%;\n }\n\n /* tables.css */\n table {\n padding: 0;\n }\n\n table tr {\n border-top: 1px solid #cccccc;\n margin: 0;\n padding: 0;\n }\n\n table tr:nth-child(2n) {\n background-color: #f8f8f8;\n }\n\n table tr th {\n font-weight: bold;\n border: 1px solid #cccccc;\n text-align: left;\n margin: 0;\n padding: 6px 13px;\n }\n\n table tr td {\n border: 1px solid #cccccc;\n text-align: left;\n margin: 0;\n padding: 6px 13px;\n }\n\n table tr th :first-child,\n table tr td :first-child {\n margin-top: 0;\n }\n\n table tr th :last-child,\n table tr td :last-child {\n margin-bottom: 0;\n }\n /* end - tables.css */\n\n /* Image styling */\n img {\n max-width: 100%;\n }\n /* end image */\n\n .communitySection {\n font-size: 24px;\n font-weight: 700;\n }\n .authorSection {\n padding: 20px 0;\n }\n .authorSection,\n .authorName {\n display: flex;\n align-items: center;\n }\n .authorImg img {\n width: 75px;\n height: 75px;\n border-radius: 50%;\n min-width: 75px;\n max-width: 75px;\n min-height: 75px;\n max-height: 75px;\n }\n .authorDetails {\n padding-left: 10px;\n }\n .authorDesc {\n padding-top: 5px;\n font-size: 14px;\n }\n .authorName img {\n margin-left: 10px;\n display: inline-block;\n width: 20px;\n }\n .authorName img:hover {\n opacity: 0.7;\n }\n\n .heading1 {\n font-size: 26px;\n font-weight: 800;\n line-height: 1.5;\n margin-bottom: 16px;\n margin-top: 32px;\n }\n\n .heading2 {\n font-size: 24px;\n font-weight: 700;\n line-height: 1.5;\n margin-bottom: 16px;\n margin-top: 32px;\n }\n\n .heading3 {\n font-size: 20px;\n font-weight: 600;\n line-height: 1.5;\n margin-bottom: 16px;\n margin-top: 32px;\n }\n\n .heading4 {\n font-size: 18px;\n font-weight: 500;\n line-height: 1.5;\n margin-bottom: 16px;\n margin-top: 32px;\n }\n\n .heading5 {\n font-size: 16px;\n font-weight: 400;\n line-height: 1.5;\n margin-bottom: 16px;\n margin-top: 32px;\n }\n\n .heading6 {\n font-size: 14px;\n font-weight: 300;\n line-height: 1.5;\n margin-bottom: 16px;\n margin-top: 32px;\n }\n\n .paragraph {\n margin: 16px 0px 32px;\n line-height: 1.625;\n }\n\n .pre {\n font-size: 14px;\n margin: 0px;\n padding: 16px;\n overflow: auto;\n }\n\n .topnav {\n -webkit-transition: top 0.5s, bottom 0.5s;\n }\n\n @media (max-width: 767px) {\n .formElement svg path {\n fill: #001934;\n }\n .visibleMobileView {\n display: block !important;\n }\n .searchInput {\n color: #001934;\n }\n .socialWrapper {\n position: absolute;\n right: 10px;\n top: 29px;\n }\n .responsive {\n margin-top: 15px;\n position: relative;\n padding-bottom: 20px;\n border-top: 1px solid #fff;\n }\n .headerTitle {\n padding-right: 50px;\n font-size: 16px;\n }\n .navBarBrand {\n min-height: 40px;\n }\n .navBarBrand img {\n margin-right: 8px;\n }\n .topnav.responsive .visibleMobile {\n display: block;\n }\n .topnav .navBarUL {\n display: none;\n }\n .topnav.responsive .navBarUL {\n display: block;\n text-align: left;\n }\n .hiddenMobile {\n display: none !important;\n }\n hr {\n margin-top: 0;\n margin-bottom: 0;\n }\n .navBarParent {\n display: block;\n }\n .separator {\n margin-top: 20px;\n margin-bottom: 20px;\n }\n .navBarULRight {\n position: static;\n }\n .navBarUL {\n display: flex;\n align-items: center;\n margin: 7.5px 0px;\n }\n .navBarUL li {\n height: 37px;\n }\n .navBarUL li a {\n font-size: 14px;\n padding: 10px 15px;\n }\n\n .navBarDefault {\n display: block;\n height: auto;\n }\n\n .navBarToggle {\n margin-right: 0;\n display: block;\n position: absolute;\n left: 11px;\n top: 15px;\n background: #fff;\n }\n\n .navBarHeader {\n display: flex;\n min-width: auto;\n padding-right: 0;\n align-items: center;\n }\n\n .navBarBrand {\n font-size: 20px;\n padding: 0 0;\n padding-left: 0;\n flex: initial;\n padding-right: 15px;\n }\n\n .titleWrapper {\n padding: 0 15px;\n display: block;\n }\n\n .gitBtn {\n display: inline-block;\n }\n\n .mobileView {\n text-align: left !important;\n padding-left: 0 !important;\n }\n\n .searchWrapper {\n padding: 0px 0;\n padding-top: 0px;\n position: absolute;\n bottom: 0px;\n width: calc(100% - 70px);\n position: absolute;\n left: 40px;\n top: 8px;\n }\n .hitWrapper {\n width: 100%;\n right: 0;\n top: 35px;\n max-height: fit-content;\n position: static;\n }\n }\n\n @media (min-width: 768px) and (max-width: 991px) {\n .navBarDefault {\n padding: 10px;\n }\n .navBarBrand {\n font-size: 22px;\n }\n .navBarHeader {\n min-width: 240px;\n flex: initial;\n }\n .divider {\n margin: 0 5px;\n height: 20px;\n }\n .hitWrapper {\n max-width: 500px;\n }\n .navBarUL li a {\n padding: 10px 5px;\n }\n .searchWrapper {\n padding-left: 0px;\n }\n }\n`;\n","import * as React from 'react';\nimport { ThemeProvider as EmotionThemeProvider } from 'emotion-theming';\nimport { Global } from '@emotion/core';\n\nimport { lightTheme, darkTheme } from './index';\nimport Header from '../Header';\nimport { baseStyles } from '../styles/GlobalStyles';\n\nclass ThemeProvider extends React.Component {\n state = {\n isDarkThemeActive: false,\n };\n\n componentDidMount() {\n this.retrieveActiveTheme();\n }\n\n retrieveActiveTheme = () => {\n const isDarkThemeActive = JSON.parse(window.localStorage.getItem('isDarkThemeActive'));\n\n this.setState({ isDarkThemeActive });\n };\n\n toggleActiveTheme = () => {\n this.setState(prevState => ({ isDarkThemeActive: !prevState.isDarkThemeActive }));\n\n window.localStorage.setItem('isDarkThemeActive', JSON.stringify(!this.state.isDarkThemeActive));\n };\n\n render() {\n const { children, location } = this.props;\n\n const { isDarkThemeActive } = this.state;\n\n const currentActiveTheme = isDarkThemeActive ? darkTheme : lightTheme;\n\n return (\n
    \n \n \n {children}\n
    \n );\n }\n}\n\nexport default ThemeProvider;\n","import styled from '@emotion/styled';\n\nexport const Sidebar = styled('aside')`\n width: 100%;\n border-right: 1px solid #ede7f3;\n height: 100vh;\n overflow: auto;\n position: fixed;\n padding-left: 24px;\n position: -webkit-sticky;\n position: -moz-sticky;\n position: sticky;\n top: 0;\n\n background: ${props => props.theme.colors.background};\n\n .rightSideTitle {\n font-size: 10px;\n line-height: 1;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 1.2px;\n padding: 7px 24px 7px 16px;\n border-left: 1px solid #e6ecf1;\n border-left-color: rgb(230, 236, 241);\n\n color: ${props => props.theme.colors.text};\n }\n\n .rightSideBarUL {\n margin-top: 32px;\n }\n\n .rightSideBarUL li {\n list-style-type: none;\n border-left: 1px solid #e6ecf1;\n border-left-color: rgb(230, 236, 241);\n }\n\n .rightSideBarUL li a {\n font-size: 12px;\n font-weight: 500;\n line-height: 1.5;\n padding: 7px 24px 7px 16px;\n\n color: ${props => props.theme.colors.text};\n }\n\n @media only screen and (max-width: 50rem) {\n width: 100%;\n position: relative;\n }\n`;\n\nexport const ListItem = styled(({ className, active, level, ...props }) => {\n return (\n
  • \n \n {props.children}\n \n
  • \n );\n})`\n list-style: none;\n\n a {\n color: #5c6975;\n text-decoration: none;\n font-weight: ${({ level }) => (level === 0 ? 700 : 400)};\n padding: 0.45rem 0 0.45rem ${props => 2 + (props.level || 0) * 1}rem;\n display: block;\n position: relative;\n\n &:hover {\n color: #2dc4f3 !important;\n }\n\n ${props =>\n props.active &&\n `\n color: #2dc4f3;\n border-color: rgb(230,236,241) !important;\n border-style: solid none solid solid;\n border-width: 1px 0px 1px 1px;\n background-color: #fff;\n `} // external link icon\n svg {\n float: right;\n margin-right: 1rem;\n }\n }\n`;\n","import React from 'react';\nimport { StaticQuery, graphql } from 'gatsby';\n\n// import Link from './link';\nimport config from '../../config';\nimport { Sidebar, ListItem } from './styles/Sidebar';\n\nconst SidebarLayout = ({ location }) => (\n {\n let navItems = [];\n\n let finalNavItems;\n\n if (allMdx.edges !== undefined && allMdx.edges.length > 0) {\n const navItems = allMdx.edges.map((item, index) => {\n let innerItems;\n\n if (item !== undefined) {\n if (\n item.node.fields.slug === location.pathname ||\n config.gatsby.pathPrefix + item.node.fields.slug === location.pathname\n ) {\n if (item.node.tableOfContents.items) {\n innerItems = item.node.tableOfContents.items.map((innerItem, index) => {\n const itemId = innerItem.title\n ? innerItem.title.replace(/\\s+/g, '').toLowerCase()\n : '#';\n\n return (\n \n {innerItem.title}\n \n );\n });\n }\n }\n }\n if (innerItems) {\n finalNavItems = innerItems;\n }\n });\n }\n\n if (finalNavItems && finalNavItems.length) {\n return (\n \n
      \n
    • CONTENTS
    • \n {finalNavItems}\n
    \n
    \n );\n } else {\n return (\n \n
      \n
      \n );\n }\n }}\n />\n);\n\nexport default SidebarLayout;\n","import React from 'react';\nimport styled from '@emotion/styled';\nimport { MDXProvider } from '@mdx-js/react';\n\nimport ThemeProvider from './theme/themeProvider';\nimport mdxComponents from './mdxComponents';\nimport Sidebar from './sidebar';\nimport RightSidebar from './rightSidebar';\nimport config from '../../config.js';\n\nimport \"katex/dist/katex.min.css\"\n\nconst Wrapper = styled('div')`\n display: flex;\n justify-content: space-between;\n background: ${({ theme }) => theme.colors.background};\n\n .sideBarUL li a {\n color: ${({ theme }) => theme.colors.text};\n }\n\n .sideBarUL .item > a:hover {\n background-color: #2dc4f3;\n color: #fff !important;\n\n /* background: #F8F8F8 */\n }\n\n @media only screen and (max-width: 767px) {\n display: block;\n }\n`;\n\nconst Content = styled('main')`\n display: flex;\n flex-grow: 1;\n margin: 0px 88px;\n padding-top: 3rem;\n background: ${({ theme }) => theme.colors.background};\n\n table tr {\n background: ${({ theme }) => theme.colors.background};\n }\n\n @media only screen and (max-width: 1023px) {\n padding-left: 0;\n margin: 0 10px;\n padding-top: 3rem;\n }\n`;\n\nconst MaxWidth = styled('div')`\n @media only screen and (max-width: 50rem) {\n width: 100%;\n position: relative;\n }\n`;\n\nconst LeftSideBarWidth = styled('div')`\n width: 298px;\n`;\n\nconst RightSideBarWidth = styled('div')`\n width: 224px;\n`;\n\nconst Layout = ({ children, location }) => (\n \n \n \n \n \n \n {config.sidebar.title ? (\n \n ) : null}\n \n {children}\n \n \n \n \n \n \n \n);\n\nexport default Layout;\n","import styled from '@emotion/styled';\n\nexport const StyledNextPrevious = styled('div')`\n margin: 0px;\n padding: 0px;\n width: auto;\n display: grid;\n grid-template-rows: auto;\n column-gap: 24px;\n grid-template-columns: calc(50% - 8px) calc(50% - 8px);\n\n .previousBtn {\n cursor: pointer;\n -moz-box-align: center;\n -moz-box-direction: normal;\n -moz-box-orient: horizontal;\n margin: 0px;\n padding: 0px;\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n place-self: stretch;\n border-radius: 3px;\n border: 1px solid rgb(230, 236, 241);\n transition: border 200ms ease 0s;\n box-shadow: rgba(116, 129, 141, 0.1) 0px 3px 8px 0px;\n text-decoration: none;\n\n background-color: ${props => props.theme.colors.background};\n color: ${props => props.theme.colors.text};\n }\n\n .nextBtn {\n cursor: pointer;\n -moz-box-align: center;\n -moz-box-direction: normal;\n -moz-box-orient: horizontal;\n margin: 0px;\n padding: 0px;\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n place-self: stretch;\n border-radius: 3px;\n border: 1px solid rgb(230, 236, 241);\n transition: border 200ms ease 0s;\n box-shadow: rgba(116, 129, 141, 0.1) 0px 3px 8px 0px;\n text-decoration: none;\n\n background-color: ${props => props.theme.colors.background};\n color: ${props => props.theme.colors.text};\n }\n\n .nextBtn:hover,\n .previousBtn:hover {\n text-decoration: none;\n border: 1px solid #2dc4f3;\n }\n\n .nextBtn:hover .rightArrow,\n .previousBtn:hover .leftArrow {\n color: #2dc4f3;\n }\n\n .leftArrow {\n display: block;\n margin: 0px;\n color: rgb(157, 170, 182);\n flex: 0 0 auto;\n font-size: 24px;\n transition: color 200ms ease 0s;\n padding: 16px;\n padding-right: 16px;\n }\n\n .rightArrow {\n flex: 0 0 auto;\n font-size: 24px;\n transition: color 200ms ease 0s;\n padding: 16px;\n padding-left: 16px;\n display: block;\n margin: 0px;\n color: rgb(157, 170, 182);\n }\n\n .nextPreviousTitle {\n display: block;\n margin: 0px;\n padding: 0px;\n transition: color 200ms ease 0s;\n }\n\n .nextPreviousTitle span {\n font-size: 16px;\n line-height: 1.5;\n font-weight: 500;\n }\n\n @media (max-width: 767px) {\n display: block;\n padding: 0 15px;\n\n .previousBtn {\n margin-bottom: 20px;\n }\n }\n`;\n","import React from 'react';\nimport Link from './link';\n\nimport { StyledNextPrevious } from './styles/PageNavigationButtons';\n\nconst NextPrevious = ({ mdx, nav }) => {\n let currentIndex;\n\n const currentPaginationInfo = nav.map((el, index) => {\n if (el && el.url === mdx.fields.slug) {\n currentIndex = index;\n }\n });\n\n const nextInfo = {};\n\n const previousInfo = {};\n\n if (currentIndex === undefined) {\n // index\n if (nav[0]) {\n nextInfo.url = nav[0].url;\n nextInfo.title = nav[0].title;\n }\n previousInfo.url = null;\n previousInfo.title = null;\n currentIndex = -1;\n } else if (currentIndex === 0) {\n // first page\n nextInfo.url = nav[currentIndex + 1] ? nav[currentIndex + 1].url : null;\n nextInfo.title = nav[currentIndex + 1] ? nav[currentIndex + 1].title : null;\n previousInfo.url = null;\n previousInfo.title = null;\n } else if (currentIndex === nav.length - 1) {\n // last page\n nextInfo.url = null;\n nextInfo.title = null;\n previousInfo.url = nav[currentIndex - 1] ? nav[currentIndex - 1].url : null;\n previousInfo.title = nav[currentIndex - 1] ? nav[currentIndex - 1].title : null;\n } else if (currentIndex) {\n // any other page\n nextInfo.url = nav[currentIndex + 1].url;\n nextInfo.title = nav[currentIndex + 1].title;\n if (nav[currentIndex - 1]) {\n previousInfo.url = nav[currentIndex - 1].url;\n previousInfo.title = nav[currentIndex - 1].title;\n }\n }\n\n return (\n \n {previousInfo.url && currentIndex >= 0 ? (\n \n
      \n \n \n \n \n \n \n
      \n
      \n
      \n Previous\n
      \n
      \n {nav[currentIndex - 1].title}\n
      \n
      \n \n ) : null}\n {nextInfo.url && currentIndex >= 0 ? (\n \n
      \n
      \n Next\n
      \n
      \n {nav[currentIndex + 1] && nav[currentIndex + 1].title}\n
      \n
      \n
      \n \n \n \n \n \n \n
      \n \n ) : null}\n
      \n );\n};\n\nexport default NextPrevious;\n","import styled from '@emotion/styled';\n\nexport const StyledHeading = styled('h1')`\n font-size: 32px;\n line-height: 1.5;\n font-weight: 500;\n border-left: 2px solid #2dc4f3;\n padding: 0 16px;\n flex: 1;\n margin-top: 0;\n padding-top: 0;\n color: ${props => props.theme.colors.heading};\n`;\n\nexport const Edit = styled('div')`\n padding: 1rem 1.5rem;\n text-align: right;\n\n a {\n font-size: 14px;\n font-weight: 500;\n line-height: 1em;\n text-decoration: none;\n color: #555;\n border: 1px solid rgb(211, 220, 228);\n cursor: pointer;\n border-radius: 3px;\n transition: all 0.2s ease-out 0s;\n text-decoration: none;\n color: rgb(36, 42, 49);\n background-color: rgb(255, 255, 255);\n box-shadow: rgba(116, 129, 141, 0.1) 0px 1px 1px 0px;\n height: 30px;\n padding: 5px 16px;\n &:hover {\n background-color: rgb(245, 247, 249);\n }\n }\n`;\n\nexport const StyledMainWrapper = styled.div`\n max-width: 750px;\n color: ${props => props.theme.colors.text};\n\n ul,\n ol {\n -webkit-padding-start: 40px;\n -moz-padding-start: 40px;\n -o-padding-start: 40px;\n margin: 24px 0px;\n padding: 0px 0px 0px 2em;\n\n li {\n font-size: 16px;\n line-height: 1.8;\n font-weight: 400;\n }\n }\n\n a {\n transition: color 0.15s;\n color: ${props => props.theme.colors.link};\n }\n\n code {\n border: 1px solid #ede7f3;\n border-radius: 4px;\n padding: 2px 6px;\n font-size: 0.9375em;\n\n background: ${props => props.theme.colors.background};\n }\n\n @media (max-width: 767px) {\n padding: 0 15px;\n }\n`;\n","import React, { useEffect, useState } from 'react';\n\nconst MobileScrollUpButton = () => {\n const [hideButton, setHideButton] = useState(true);\n\n const [prevScrollHeight, setPrevScrollHeight] = useState(0);\n\n const showOrHide = () => {\n window.scrollY > prevScrollHeight ? setHideButton(true) : setHideButton(false);\n setPrevScrollHeight(window.scrollY);\n };\n\n useEffect(() => {\n window.addEventListener('scroll', showOrHide);\n //Make button disappear once scroll to top is complete\n window.onscroll = () => {\n if (window.scrollY === 0) {\n setHideButton(true);\n setPrevScrollHeight(0);\n }\n };\n return function cleanup() {\n window.removeEventListener('scroll', showOrHide);\n };\n });\n\n const handleClick = () => {\n window.scroll(0, 0);\n };\n\n return (\n \n );\n};\n\nexport default MobileScrollUpButton;\n","import React, { Component } from 'react';\nimport Helmet from 'react-helmet';\nimport { graphql, Link } from 'gatsby';\nimport MDXRenderer from 'gatsby-plugin-mdx/mdx-renderer';\n\nimport { Layout } from '$components';\nimport NextPrevious from '../components/NextPrevious';\nimport config from '../../config';\nimport { Edit, StyledHeading, StyledMainWrapper } from '../components/styles/Docs';\n\nimport 'katex/dist/katex.min.css';\nimport MobileScrollUpButton from './MobileScrollUpButton';\n\nconst forcedNavOrder = config.sidebar.forcedNavOrder;\n\nexport default class MDXRuntimeTest extends Component {\n render() {\n const { data } = this.props;\n\n if (!data) {\n return null;\n }\n if (!data.site) {\n //markdown page not found\n return (\n \n

      Page not found

      \n

      \n Go home\n

      \n
      \n );\n }\n const {\n allMdx,\n mdx,\n site: {\n siteMetadata: { docsLocation, title },\n },\n } = data;\n\n const navItems = allMdx.edges\n .map(({ node }) => node.fields.slug)\n .filter(slug => slug !== '/')\n .sort()\n .reduce(\n (acc, cur) => {\n if (forcedNavOrder.find(url => url === cur)) {\n return { ...acc, [cur]: [cur] };\n }\n\n let prefix = cur.split('/')[1];\n\n if (config.gatsby && config.gatsby.trailingSlash) {\n prefix = prefix + '/';\n }\n\n if (prefix && forcedNavOrder.find(url => url === `/${prefix}`)) {\n return { ...acc, [`/${prefix}`]: [...acc[`/${prefix}`], cur] };\n } else {\n return { ...acc, items: [...acc.items, cur] };\n }\n },\n { items: [] }\n );\n\n const nav = forcedNavOrder\n .reduce((acc, cur) => {\n return acc.concat(navItems[cur]);\n }, [])\n .concat(navItems.items)\n .map(slug => {\n if (slug) {\n const { node } = allMdx.edges.find(({ node }) => node.fields.slug === slug);\n\n return { title: node.fields.title, url: node.fields.slug };\n }\n });\n\n // meta tags\n const metaTitle = mdx.frontmatter.metaTitle;\n\n const metaDescription = mdx.frontmatter.metaDescription;\n\n let canonicalUrl = config.gatsby.siteUrl;\n\n canonicalUrl =\n config.gatsby.pathPrefix !== '/' ? canonicalUrl + config.gatsby.pathPrefix : canonicalUrl;\n canonicalUrl = canonicalUrl + mdx.fields.slug;\n\n return (\n \n \n {metaTitle ? {metaTitle} : null}\n {metaTitle ? : null}\n {metaDescription ? : null}\n {metaTitle ? : null}\n {metaDescription ? : null}\n {metaTitle ? : null}\n {metaDescription ? (\n \n ) : null}\n \n \n
      \n {mdx.fields.title}\n \n
      \n \n {mdx.body}\n \n
      \n \n
      \n \n
      \n );\n }\n}\n\nexport const pageQuery = graphql`\n query($id: String!) {\n site {\n siteMetadata {\n title\n docsLocation\n }\n }\n mdx(fields: { id: { eq: $id } }) {\n fields {\n id\n title\n slug\n }\n body\n tableOfContents\n parent {\n ... on File {\n relativePath\n }\n }\n frontmatter {\n metaTitle\n metaDescription\n }\n }\n allMdx {\n edges {\n node {\n fields {\n slug\n title\n }\n }\n }\n }\n }\n`;\n","var isBrowser = \"object\" !== 'undefined';\n\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className]);\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\n\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false && cache.compat !== undefined) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n var maybeStyles = cache.insert(\".\" + className, current, cache.sheet, true);\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles };","/**\r\n * Prism: Lightweight, robust, elegant syntax highlighting\r\n * MIT license http://www.opensource.org/licenses/mit-license.php/\r\n * @author Lea Verou http://lea.verou.me\r\n */\n\n/**\r\n * prism-react-renderer:\r\n * This file has been modified to remove:\r\n * - globals and window dependency\r\n * - worker support\r\n * - highlightAll and other element dependent methods\r\n * - _.hooks helpers\r\n * - UMD/node-specific hacks\r\n * It has also been run through prettier\r\n */\nvar Prism = function () {\n var uniqueId = 0;\n var _ = {\n util: {\n encode: function encode(tokens) {\n if (tokens instanceof Token) {\n return new Token(tokens.type, _.util.encode(tokens.content), tokens.alias);\n } else if (_.util.type(tokens) === \"Array\") {\n return tokens.map(_.util.encode);\n } else {\n return tokens.replace(/&/g, \"&\").replace(/ text.length) {\n // Something went terribly wrong, ABORT, ABORT!\n return;\n }\n\n if (str instanceof Token) {\n continue;\n }\n\n if (greedy && i != strarr.length - 1) {\n pattern.lastIndex = pos;\n var match = pattern.exec(text);\n\n if (!match) {\n break;\n }\n\n var from = match.index + (lookbehind ? match[1].length : 0),\n to = match.index + match[0].length,\n k = i,\n p = pos;\n\n for (var len = strarr.length; k < len && (p < to || !strarr[k].type && !strarr[k - 1].greedy); ++k) {\n p += strarr[k].length; // Move the index i to the element in strarr that is closest to from\n\n if (from >= p) {\n ++i;\n pos = p;\n }\n } // If strarr[i] is a Token, then the match starts inside another Token, which is invalid\n\n\n if (strarr[i] instanceof Token) {\n continue;\n } // Number of tokens to delete and replace with the new match\n\n\n delNum = k - i;\n str = text.slice(pos, p);\n match.index -= pos;\n } else {\n pattern.lastIndex = 0;\n var match = pattern.exec(str),\n delNum = 1;\n }\n\n if (!match) {\n if (oneshot) {\n break;\n }\n\n continue;\n }\n\n if (lookbehind) {\n lookbehindLength = match[1] ? match[1].length : 0;\n }\n\n var from = match.index + lookbehindLength,\n match = match[0].slice(lookbehindLength),\n to = from + match.length,\n before = str.slice(0, from),\n after = str.slice(to);\n var args = [i, delNum];\n\n if (before) {\n ++i;\n pos += before.length;\n args.push(before);\n }\n\n var wrapped = new Token(token, inside ? _.tokenize(match, inside) : match, alias, match, greedy);\n args.push(wrapped);\n\n if (after) {\n args.push(after);\n }\n\n Array.prototype.splice.apply(strarr, args);\n\n if (delNum != 1) {\n _.matchGrammar(text, strarr, grammar, i, pos, true, token);\n }\n\n if (oneshot) {\n break;\n }\n }\n }\n }\n },\n hooks: {\n add: function add() {}\n },\n tokenize: function tokenize(text, grammar, language) {\n var strarr = [text];\n var rest = grammar.rest;\n\n if (rest) {\n for (var token in rest) {\n grammar[token] = rest[token];\n }\n\n delete grammar.rest;\n }\n\n _.matchGrammar(text, strarr, grammar, 0, 0, false);\n\n return strarr;\n }\n };\n\n var Token = _.Token = function (type, content, alias, matchedStr, greedy) {\n this.type = type;\n this.content = content;\n this.alias = alias; // Copy of the full string this token was created from\n\n this.length = (matchedStr || \"\").length | 0;\n this.greedy = !!greedy;\n };\n\n Token.stringify = function (o, language, parent) {\n if (typeof o == \"string\") {\n return o;\n }\n\n if (_.util.type(o) === \"Array\") {\n return o.map(function (element) {\n return Token.stringify(element, language, o);\n }).join(\"\");\n }\n\n var env = {\n type: o.type,\n content: Token.stringify(o.content, language, parent),\n tag: \"span\",\n classes: [\"token\", o.type],\n attributes: {},\n language: language,\n parent: parent\n };\n\n if (o.alias) {\n var aliases = _.util.type(o.alias) === \"Array\" ? o.alias : [o.alias];\n Array.prototype.push.apply(env.classes, aliases);\n }\n\n var attributes = Object.keys(env.attributes).map(function (name) {\n return name + '=\"' + (env.attributes[name] || \"\").replace(/\"/g, \""\") + '\"';\n }).join(\" \");\n return \"<\" + env.tag + ' class=\"' + env.classes.join(\" \") + '\"' + (attributes ? \" \" + attributes : \"\") + \">\" + env.content + \"\";\n };\n\n return _;\n}();\n/* This content is auto-generated to include some prismjs language components: */\n\n/* \"prismjs/components/prism-markup\" */\n\n\nPrism.languages.markup = {\n 'comment': //,\n 'prolog': /<\\?[\\s\\S]+?\\?>/,\n 'doctype': //i,\n 'cdata': //i,\n 'tag': {\n pattern: /<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s(?:\\s*[^\\s>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))|(?=[\\s/>])))+)?\\s*\\/?>/i,\n greedy: true,\n inside: {\n 'tag': {\n pattern: /^<\\/?[^\\s>\\/]+/i,\n inside: {\n 'punctuation': /^<\\/?/,\n 'namespace': /^[^\\s>\\/:]+:/\n }\n },\n 'attr-value': {\n pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/i,\n inside: {\n 'punctuation': [/^=/, {\n pattern: /^(\\s*)[\"']|[\"']$/,\n lookbehind: true\n }]\n }\n },\n 'punctuation': /\\/?>/,\n 'attr-name': {\n pattern: /[^\\s>\\/]+/,\n inside: {\n 'namespace': /^[^\\s>\\/:]+:/\n }\n }\n }\n },\n 'entity': /&#?[\\da-z]{1,8};/i\n};\nPrism.languages.markup['tag'].inside['attr-value'].inside['entity'] = Prism.languages.markup['entity']; // Plugin to make entity title show the real entity, idea by Roman Komarov\n\nPrism.hooks.add('wrap', function (env) {\n if (env.type === 'entity') {\n env.attributes['title'] = env.content.replace(/&/, '&');\n }\n});\nObject.defineProperty(Prism.languages.markup.tag, 'addInlined', {\n /**\n * Adds an inlined language to markup.\n *\n * An example of an inlined language is CSS with `OT&E Test Construct Development Guide

      OT&E Test Construct Development Guide

      11 February 2021

      + + + image2 + +

      Last Updated: 26 February 2021

      Originating Office: OPR is AFOTEC A-3 and OCR is AFOTEC A-2/9

      INTRODUCTION

      This document contains information pertaining to the first two steps of +five major steps that define the overarching OT&E test activity. +Although the five major steps of a generic test activity can be applied +to various level of test (e.g., testing system functions, components, +sub-systems, and capabilities), this guide focuses on developing the +OT&E Construct to capture mission effects and the subsequent, +overarching test activity.

      The first step is “defining the what;” in the context of the OT&E +Construct, this is commonly described as battlespace development. It +answers the following questions: What are the operations under test; +what is the intended use of the system(s) in the operation; what are +the operational conditions they will be employed/supported under +(operations and conditions); and what do you need to measure to +determine combat capability or mission effects. Battlespace development +provides a strong operations-based foundation to build upon during test +design and when executing and reporting operational test.

      This guide also addresses the second of the five major steps, test +design. Test design determines the goals of the test and how to achieve +them. This includes considerations of creating an operationally +realistic environment, executing representative scenarios, and the means +to collect the resulting data.

      When answering these questions with discipline, the output is a strong +foundation for operationally sufficient and technically adequate +operational test and evaluation (OT&E).

      Submit suggested changes to AFOTEC DRU A-3E Workflow at +AFOTEC.A3E.Workflow@us.af.mil

      The Operational Test and Evaluation Construct

      The OT&E Construct is the framework for conducting operational test. It +identifies the following elements of an operational test and their +relationship to one another:

      • Operational Effectiveness:  Measure of the *overall capability

        to accomplish a mission when used by representative personnel in +the environment planned or expected for operational employment of +the system considering organization, doctrine, supportability, +survivability, vulnerability and threat. (AFI 99‑103, +Capability‑Based Test and Evaluation*, 6 Apr 17)

      • Operational Suitability:  The *degree to which a system can be

        placed satisfactorily in field use with consideration given to +availability, compatibility, transportability, interoperability, +reliability, wartime usage rates, maintainability, safety, human +factors, manpower supportability, logistics supportability, +natural environmental effects and impacts, documentation and +training requirements. (AFI 99-103, Capabilities-Based Test and +Evaluation*, 6 Apr 17)

      • Mission Statement: Mission statements are written at a high,

        overarching level consistent with the mission the system is +intended to support or enable.

      • Critical Operational Issues (COI): A COI addresses a *critical

        mission element or operational objective* examined during OT&E to +determine the system’s overall capability to support mission +accomplishment (often referred to as operations-based COIs).

      • Operations: A COI is composed of one or more operations.

        Operations describe the actions, activities, or phases of a +mission needed to accomplish the COI. With two or more +operations, the overarching operational objective is the same; +however, the steps and/or conditions to achieve the COI are +different between operations.

      • Mission Effects: Mission effects are outcomes or results of

        conducting an operation.

      • Operational Capabilities: OCs provide operational context for

        system capabilities or attributes of high interest or importance +within an operation. It may be useful to distinguish between +system capabilities (i.e., the potential to perform some action) +and system attributes (i.e., the functions, properties, structure) +of a system. Operational capabilities provide the means to conduct +an operation and achieve effects.

      • Operational (User) Requirements: A *system capability,

        attribute, or characteristic required to accomplish approved +capability needs*. Operational requirements (including +suitability) are typically performance attributes, but they may +also be derived from cost and schedule (AFI 10-601). Typically +referred to as “requirements.”

      • Operational Conditions: Operational conditions are identified

        for each COI or operation and depict the operational battlespace. +An operational condition is defined by a set of factors, each set +at a given level. A factor is a variable of the environment that +may affect task performance. A level is a set value within the +range of values a factor can hold.

      • Measures: Measures are designed to convey information about a

        system’s effect, capabilities, functions, properties, or structure +being addressed.

      • Data/Data Element: Data is *any measurement or information used

        to determine the value of a measure*. Data may be quantitative, +qualitative, subjective, or objective.

      • Test Design: The test design is a set of test events for each

        operation and battlespace condition, including the rationale for +selecting the test events.

      • Test Event: A test event is a *single execution of an operation

        or sequence/set of operations* under specified conditions for the +operations.

      This guide provides methods to develop these elements of the OT&E +Construct for the overarching goal of determining effectiveness and +suitability.

      Operational Sufficiency and Technical Adequacy

      Operational sufficiency and technical adequacy are two basic AFOTEC +tenets leading to an adequate and credible test.

      Operational Sufficiency addresses the breadth of the operations and +conditions addressed while employing new or modified capabilities within +the context of representative employment and support concepts. An +operational test and evaluation (OT&E) is considered operationally +sufficient if it provides the decision maker and the warfighter with +results from test events executed across sufficient operations and +conditions to identify the capabilities and limitations associated with +employment and support, and enables an effectiveness and suitability +determination.

      Ensuring operational sufficiency requires a thorough understanding and +identification of the operational employment and support environment and +conditions, to include operational threats. AFOTEC core teams address +operational sufficiency while designing test events to ensure +capabilities and concepts are adequately addressed within the +operational evaluation. Core teams are one tool to address operational +sufficiency by using operational perspective, experience, and judgment +to ensure test events are evaluated within the context of envisioned +operations and support. This allows AFOTEC to characterize systems’ +capabilities and mission effects.

      Technical Adequacy addresses the relevance of the technical information +produced by the test in relation to the purpose of the test (i.e., test +events address operationally relevant questions). This includes test +design, test measures, relevant threat environments, data collection +methods, scoring, analysis, modeling and simulation, and test capability +accreditation. A test is technically adequate if the test data +evaluation provides the acquisition decision maker information to inform +the relevant decision.

      Operational Test and Evaluation Test Activity Cycles

      A general test activity is the sequence of determining what to test, how +to test, executing the test and collecting data, analyzing the results, +and reporting the conclusions (see figure 1). The success of this +activity depends largely on an initial understanding of the battlespace, +the capabilities under test, and how the capabilities fit within the +battlespace. All subsequent activities build on a test team’s basic +understanding of the expected capabilities under test, in what +operational conditions the capabilities will be employed and supported, +and what needs to be measured. This is called “Defining the What.” Using +more operational terminology, this effort is commonly referred to as +battlespace development and should be the first step for the OT&E +Construct test activity.

      Figure 1. Steps in the OT&E Construct Test Activity

      + + + image3 + + Developing +a battlespace is the first of five major steps in the AFOTEC OT&E +Construct and is accomplished in conjunction with Test Design (discussed +in this guide with more detail in the Analyst Test Design Guide). This +step frames the OT&E by answering four fundamental questions. *What* are +the capabilities under test; *what* is the intended use of the +capabilities; in *what* operational conditions will the capabilities be +employed/supported (operations and conditions); and *what* do you need +to measure to determine combat capability?

      Test teams have latitude in how they develop the battlespace. However, +this guide presents a long-standing and proven approach test teams +should consider before proceeding with test design. It is systematic and +can quickly take test teams from limited operational understanding to +credible OT&E Constructs. This AFOTEC default approach to battlespace +development will provide a sound foundation for the second step, Test +Design. Figure 2 generalizes this approach. Although depicted as a +sequence of steps, the process is iterative and adaptive.

      Figure 2. Battlespace Development Within the OT&E Construct

      + + + image4 + +

      Battlespace development provides the foundation for operationally +sufficient and technically adequate OT&E by ensuring operations-based +test designs. It supports the later application of scientific methods of +testing needed to design and analyze tests across the operational +battlespace to ensure credibility. A key element of the scientific +method of operational test is mission thread analysis, which includes +identifying the operational conditions and considering test constraints, +thereby leading to a set of high-return test events. These events will +lead to a defensible basis for resource estimations (test articles, +personnel, etc.) early in an acquisition and OT&E lifecycle. It also +aids the development of test execution methodologies (field test, +modeling and simulation, hybrid), identifying test capability +requirements and shortfalls, and refining OT activities and schedule +(Integrated Test & Evaluation).

      Using a Core Team Approach.

      The core team is an AFOTEC-led working group established to support +program test activities. Examples include battlespace development, test +design, measures workshops, and technical reviews. The core team is +composed of all AFOTEC stakeholders (Test Team, Detachment and +Headquarters staff). The core team is led by the responsible test +director (TD). It includes any AFOTEC Detachment subject matter +expertise (SME) the TD believes is needed (e.g., logistics and cyber +SMEs). AFOTEC/A3 typically facilitates the process. An AFOTEC +directorate’s core team member’s general responsibilities include +ensuring their directorate’s intent and expertise is considered as early +as possible. It also aids the staff awareness and support during later +activities and staffing actions. External stakeholders are also invited +to support OT&E Construct development. Key external representatives come +from operational users, program offices, development test, and other +OTAs (for Multi-service OT). DOT&E action officers (or support +contractors, typically the Institute for Defense Analyses (IDA)) should +also be invited if the program is on the DOT&E oversight list. External +involvement during the OT&E Construct development is significant in +terms of early buy-in on AFOTEC’s foundational planning effort, and it +builds relationships at the earliest possible opportunity. The OT&E +Construct can be developed without externals, and with some rapid test +activities it may be required to keep a program moving quickly. However, +OT&E Constructs are typically better if external stakeholder +interests/inputs are considered. Figure 3 reflects a typical CT +composition and potential external stakeholders.

      Figure 3. Core Team Composition

      + + + C:\Users\James.Thomas\Desktop\ITD Brief\CT Picture.png + +

      The typical roles and responsibilities for core team members and +external stakeholders are addressed in table 1.

      Table 1. Core team and External participant Roles and Responsibilities

      Core TeamExternal Participants.

      Detachment TD:

      - Serves as the overall lead for all core/test team activities from program involvement through OT closeout

      - Produces well-written documents and well-prepared briefings

      - Serves as primary briefer for the program

      Note: Det/CC has operational control of the testing process from TO through OT closeout

      Battlespace development facilitator:

      - Facilitates the battlespace development and assists TD with developing the test design

      - Documents the OT&E Construct

      - Co-facilitates test events, methodologies, and scenarios

      A-2/9 Staff:

      - Co-facilitates test events, methodologies, and scenarios

      - Assesses program’s intelligence sensitivity

      - Provides assistance with development of realistic threat scenarios

      - Provides specialized support to team in the effectiveness analysis, suitability analysis, modeling and simulation expertise, test design expertise, weather, intelligence, and human factors

      A-5/8 Staff: Provides policy guidance, test capability, and range identification

      SE Staff: Provides environmental, safety, and health guidance

      - Warfighters bring operational currency, background information and clarity when addressing operational requirements and concepts of operations

      - Program office participants bring program information (schedules, technical risk areas, funding, etc.) Gain insight into OT expectations; know potential impact to contract awards with OT flavor

      - Lead Developmental test organization (LDTO)/CTA participants bring developmental test (DT) information, gain insight into OT expectations, identify operationally representative OT events that DT can fulfill, know potential impact on capability requirements clarification start provide insight into integrated test challenges

      - Other agencies provide insight into test capabilities, expectations, plans, limitations

      -- Director, Operational Test and Evaluation (DOT&E) fulfills an oversight function

      -- Other OTAs address their Service equities for MOT&Es

      --- Army Test and Evaluation Center (ATEC)

      --- Operational Test and Evaluation Force (OPTEVFOR)

      --- Marine Corps Operational Test and Evaluation Agency (MCOTEA)

      Construct Development Meetings

      Battlespace development typically occurs in a formal meeting(s) +environment. It is closely tied to the test design and is often +accomplished during the same meeting(s). In most cases, an A3 test +design manager (TDM) will accomplish pre-work with the TD prior to the +formal battlespace development meeting. The pre-work, coupled with A3 +facilitation, allows the meeting to be executed quickly and efficiently. +Successful battlespace development typically takes a couple of days +allowing a transition into the test design activity during the same +formal meeting. Optimally, one battlespace development/test design +meeting is required with follow-on activities for measures development +(measures workshop) and execution planning activities.

      Battlespace Development

      The Battlespace development steps are captured in the subsequent +paragraphs.

      Researching the Capability or System Being Acquired

      Core team members and external stakeholders should strive for maximum +understanding of the capability being acquired, the mission(s) it +supports, and how it will be employed and supported before the formal +meeting. To prepare for the battlespace development/test design meeting, +research capability-based requirements (e.g., draft ICD, CDD) and any +available system information from various sources (e.g., SRD, TRD). +Other documents critical to operational understanding are CONOPS, TTPs +and threat documentation. This research results in knowledge of where +and how the system fits into the envisioned battlespace and the intended +operational capabilities. Gaining this knowledge can be inherently +difficult early in a program’s acquisition cycle with only a draft ICD +and a limited, or no written CONOPS. The operational significance of the +required capabilities and their impact on the battlespace need to be +understood sufficiently in order to properly scope the overall +operational evaluation.

      The CT should strive to understand:

      • The mission the system is designed to support

      • Operational objectives required to accomplish the mission

      • The critical elements of the mission the system supports

      • Information/data cyber dependencies which enable the mission

      • Bounds of the “system” acquisition and the T&E processes (i.e., “to

        what extent are other systems impacted, beyond the system being +acquired, within the T&E processes?”)

      • Threat environment (kinetic and non-kinetic) in which the system is

        expected to operate

      • Limitations and issues that are resolved to support the acquisition

        and T&E processes (technical as well as operational)

      • Program documentation:

      • System CONOPS

      • Capability requirements documents

      • Program acquisition strategy (DoDI 5000.02 model being employed -

        hardware- or software-centric; additional documents may be used, +as required)

      • AFOTEC battlespace development process

      • AFOTEC test design process

      + + + image6 + + To +facilitate common understanding a series of briefings are typically +provided at the start of a battlespace development /test design meeting. +The briefings cover the Acquisition, CONOPS, capability requirements and +threats. Generally, the program office, warfighting user, and +intelligence representatives provide the briefings. Once the team +understands the battlespace and how the SUT will support the operation +in that battlespace, the team can examine how the required capabilities +map to the operational activities. The AFOTEC approach to ensure the +core team understands the capability and system being acquired is to +build battlespace depiction in the form of an Evaluation View (EV).

      Battlespace Depiction

      + + + image7 + +

      When +developing the battlespace depiction, the core team should consider the +type of capability being acquired, what actions the capability enables, +what objective(s) the capability supports, and the objective’s +dependencies on other systems. For example, if accomplishment of an +operational objective depends on numerous other systems and operational +factors, it may be difficult to provide a credible answer about the +system’s contribution to the objective; in this case the scope or level +of test could be too high (e.g., operational level of conflict, table 4) +versus a more credible tactical level of conflict. These considerations +will help guide the level of detail for the nodes in the evaluation view +and define the scope of the test.

      The Evaluation View

      The evaluation view (EV) (Figure 5) is one method used to aid +operational understanding; it is a facilitation tool to get the core +team and external participants to a point of common battlespace +understanding before jumping into operational test design. The EV +illustrates three important OT fundamentals: where in the operation the +system will likely influence operational outcome; where and when +OT-relevant data will likely be generated; and where the operational +environment could affect the system’s capability.

      The EV is not intended to be a literal depiction. The core team should +understand that the battlespace depiction is not perfect, but that it +meets the needs of process facilitation. The core team will need to have +a degree of understanding and latitude as they progress through the +process because they will have to reach a consensus on the level of +detail they deem sufficient to proceed to the next step.

      There are other methods to gain operational understanding, but using the +EV has proven successful over several hundred test efforts and is +typically the tool of choice to facilitate the majority of battlespace +development efforts. It has advantages over various other tools such as +the DoD Architecture Framework (DODAF) views. Although DODAF views are +useful for different levels of planning, they are oftentimes not +available for the early AFOTEC planning efforts. The DODAF system views +(SV) and technical views (TV) are very specific in purpose and do not +provide an overall picture of the battlespace. A DODAF operational view +1 (OV-1) is often useful; however, it normally only addresses the +pointy-edge of the operation and does not typically address logistics to +an acceptable level of detail. When an EV is complete, and done +properly, it should reflect a tailored battlespace depiction that shows:

      • Major battlespace phases

      • Elements of the operation (primary nodes)

      • Mission statement

      • Critical operational issues (COI) and subordinate operations

      • Capability requirements mapping

      • Information sources/references

      • Inherently addresses both effectiveness and suitability elements

      • Provides equal consideration to logistics-centric operations

      The Evaluation View 1

      + + + image8 + +

      Building +an EV can look challenging on the surface, but it is initially framed by +an A-3 Test Design Manager (TDM) skilled in their development. The TDM +works hand-in-hand with the TD in all pre-work activities and the +initial framing occurs prior to any formal meetings. The EV-1 forms a +system-of-systems depiction of the Joint and/or Air Force doctrinal +mission area that the new/modified capability is intended to support. It +is developed using the broad knowledge gained from early involvement, +studying Joint and Air Force doctrine and researching all available +program documentation (e.g., AoA, system CONOPS, ICD, CDD/IS CDD, T&E +strategy, Air Force & Joint CONOPS & Doctrine, associated DODAF +architectures). The EV consists of typical operational nodes linked +together using a “necessary conditions” methodology. Primary nodes are +significant elements of the operation. Major phases are logical +groupings of primary nodes and are used to add clarity and understanding +to differing phases of the operation. Major phases of the operation +usually become apparent after the primary nodes are linked and are +further differentiated using different colors to associate the primary +nodes with their respective major phase.

      The Evaluation View 2

      EV-2s are a near-seamless evolution of EV-1s and differ in three primary +areas. The EV-2 has capability requirements, critical operational issues +(COI) and subordinate operations mapped into the battlespace.

      Capability Requirements Mapping

      The EV 2 (Figure 6) builds on the operational environment depicted on +EV-1. The EV-2 is developed by mapping operational capability +requirements into the depiction where the operational performance data +would likely be generated during a typical operations. Operational +capability requirements are found in a variety of documents (e.g., draft +ICD, CDD and CONOPS). Operational capability requirements usually +contain key characteristics (attributes) with appropriate parameters and +metrics. However, they may be described with only the characteristic +(e.g., “the system must possess high reliability”). Other times there +may not be any documented capability requirements and in these cases +there will be greater reliance on current operational expertise to +define the material solution (system under test). This is the most +extreme case for defining the battlespace and system under test and +would require documenting capability documentation shortfalls. While +mapping requirements, keep in mind that teams often identify +requirements shortfalls that should be mapped as derived capabilities.

      Derived capabilities are usually the result of some inferences in the +ICD or CDD, or could result from an interpretation of the CONOPS and +capabilities relationship and understanding that certain performance +characteristics must exist for a system to meet its overall mission +need. Derived capabilities do not have associated criteria or +references, but generally influence the overall effectiveness and/or +suitability determinations (The TD must validate capabilities derived +during the core team process with the user).

      To help teams readily identify cybersecurity interest areas. The nodes +with cyber dependencies will be identified by a blue border and will +have applicable requirements and verbiage detailing the cyber dependency +mapped into it. The purpose of this step is to generate discussion and +identify area for further investigation into possible test implications +concerning Cybersecurity.

      During DT/OT, the test team should monitor/assist with cybersecurity +test events, pursuing test events using standard scenarios based on real +procedures, real operators, and production-representative equipment. If +viable, the team should plan accordingly and reflect the plan in the +TEMP and other test-planning documentation. The team must incorporate +the CDD/CPD and system CONOPS as testing evolves.

      Mission Statement

      Mission statements are written at a high, overarching level consistent +with the mission the system is intended to support. For example, “Combat +Search and Rescue Locator (CSARL) supports the combat search and rescue +mission.” The team should ask, “What mission is the system intended to +execute or support?” or “Why are the capabilities being acquired?” +Mission statements should be consistent with wording from published +documents like the ICD/IS ICD, CDD/IS CDD, CONOPS, doctrine, etc. The +mission statement should also trace to the capability gaps identified in +the ICD. The Detachment TD and A-3 TDM develop a recommended mission +statement in the pre-work and present it to the team during the meeting.

      Critical Operational Issues

      A critical operational issues (COI) is an operational question. AFOTEC +defines a COI as a critical mission element or operational objective +that is examined during OT&E to determine the system’s overall +capability to support mission accomplishment as determined by +effectiveness and suitability. Put simply, COIs are operations, and +should clearly speak to the warfighter. When answered, the operational +impact is clear. For COIs, the team should ask, “What are the critical +elements of the mission?” or “What warfighter goals, major operations, +or activities are intended to be accomplished?”

      A COI may be composed of more than one type of operation and may +describe the operation in a set of activities or phases of a mission +needed to accomplish the COI. An example is the KC-46 COI, “Can KC-46 +provide refueling?” There are at least two distinct activities or +operations within this COI: air-to-air refueling and forward area +refueling point (FARP), which is forward ground refueling. Although the +overarching goal is the same (to provide refueling), the activities and +the conditions to do this are different. Identifying operations allows +for designing test around the unique operations and associated +operational conditions. The major phases identified on the EV should +provide a logical COI structure. The COIs and any breakout of +subordinate operations are documented on the EV near logically group +operational nodes.

      COIs are operations, not functions, system characteristics, or enable +characteristics. Figure 7 illustrates some basic COI tenants.

      Figure 7. COI Tenets

      + + + image9 + +

      As with all things, there are exceptions. Given the emphasis on +cybersecurity, teams have the option to address cybersecurity as a +separate COI. This is typically done because teams believe there are +test reporting advantages. For some systems, a cyber COI may be helpful +for reporting cyber effects to warfighters and acquisition community +separate from system performance in an uncontested cyber environment. +Reporting this way highlights cyber during OT&E by more narrowly +focusing on what needs to be corrected, why, and the impact if not +corrected from a cyber perspective. In these cases, a separate COI to +capture cybersecurity concerns, may be warranted. Considerations that +could justify a separate cyber COI are characteristics of the SUT (e.g., +common architecture across all COIs, a software/network focus, and +potential catastrophic node), characteristics of the operating +environment (e.g., significant documented cyber threats or reliance on +out of boundary systems or connections), or when cyber effects are not +fully captured in traditional ops-based COIs. Test teams can choose from +three OT&E constructs (integrated, stand-alone, and hybrid) to capture +and report cyber impacts in a manner that ensures stakeholders +understands performance and mission impacts in a cyber-contested +environment. Cyber considerations do not mandate a cyber-centric COI; +however, core teams have flexibility should they desire a different +cyber reporting approach.

      The integrated approach (commonly referred to as traditional or +Ops-based) would only have a cyber-centric COI if there was a defined +cyber operation introduced by the SUT. Cyber elements (operational +conditions, threats, test measures, etc.) are addressed within the +context of the missions or operations-based COIs (wherever cyber can +affect operational outcome). Using the integrated approach, any notable +issues identified that extend beyond the SUT (e.g., do not affect the +degree of mission accomplishment of the SUT or the ability to place in +field use) may be addressed in a separate annex to the OT&E report, if +warranted.

      The stand-alone approach addresses all of the operations-based COIs in +an uncontested cyber environment; the stand-alone, cyber-centric COI +addresses the operations in a cyber-contested environment. This approach +allows the baselining of uncontested performance, as compared to +contested performance of the SUT. The Stand-alone Cyber COI essentially +embeds and executes the operations documented in the traditional COIs in +a cyber COI that has a contested environment. All cyber contested +elements (e.g., operational conditions, threats, test measures, and test +events) are addressed within the cyber COI. Additional cyber-specific +measures address the system’s cyber operational capabilities.

      The hybrid approach applies elements of both the integrated and +stand-alone approaches, addressing cyber both within the +operations-based COIs and a separate cyber-centric COI. Cyber elements +(e.g., operational conditions, threats, test measures, and test events) +are addressed within the context of the missions or operations-based +COIs, the cyber COI is functionally focused (e.g., cybersecurity +operational capabilities) and also addresses effects not seen within the +missions or operations-based COIs (i.e., indirect effects, 2nd/3rd order +effects). This may also be used to expand cyber reporting beyond the +SUT, if warranted.

      Operations

      Based on different activities or different operational conditions within +a COI, multiple subordinate operations may be identified under a COI. An +example COI for the KC-46 was, “Can KC-46 provide refueling?” There are +at least two distinct activities or operations within this COI: +air-to-air refueling and forward area refueling point (FARP). Although +the overarching goal is the same (to provide refueling), the activities +and the conditions to achieve this are different. Another example could +be sustainment operations that has a subordinate maintenance operation, +deployed operation, and training operation. Again the need for breaking +down various operations become obvious when identifying the various +conditions associated with the different operations.

      Operational Employment and Support Conditions

      Measures of Effectiveness

      MOEs (very similar to the previous Mission-Oriented Response Variables +or MORV) are developed for each COI or for each operation. An MOE is a +measure of a system’s (or operation’s) degree of mission success and +will be commensurate with the level of test. It is a dependent variable +which gauges the achievement of a desired effect (aka measure of +effect). MOEs also guide the development of factors and levels by +assessing factors’ expected impact on the MOEs.

      Ideally, an MOE should be continuous, but could also be binary—was the +effect achieved or not. While a categorical or binary MOE may be a +strong indicator of mission success, it might also drive considerably +more testing and resource requirements than a continuous MOE would +require to achieve the same statistical significance.

      Examples of MOEs for a notional Combat Search and Rescue system’s +operation of Recover Personnel might be:

      • Binary: “Percentage of Rescue Attempts that are Successful”

      • Continuous: “Proportion of Survivors Rescued”

        Note the measure of effectiveness reflects the outcome or effect of +an operation.

      Operational Conditions (Factors and Levels)

      Operational conditions define the system’s operations and support +environment. After MOEs have been developed, operational conditions that +potentially have a significant influence on outcome of the operations +are identified. Operational conditions are identified for each COI or +operation within a COI and depict the operational battlespace identified +to support development of test events and scenarios. An operational +condition is defined by a set of factors, each set at a given level. A +factor is a variable of the environment that affects task performance. A +level is a set value within the range of values that a factor can hold. +It is important to understand the factors influencing task performance +in order to initially capture representative operational conditions in +the OT&E Construct. The terminology (conditions, factors, and levels) is +derived from CJCSM 3500.04D.

      The set of factors and levels forms the relevant set of operational +conditions. These conditions are contained in the test design +worksheets. As an example, the Mode of Travel, Battery Type, Terrain, +Time of Day, and Threat are all factors (Table 3) potentially +influencing the outcome of the operation as defined by the MOE: +Percentage of Rescue Attempts that are Successful. No Vehicle, +Rechargeable, Flat, Night, and High are one level for each factor, +respectively. A single condition for the survivor/evader navigation COI +can be described by a specific combination of factors and levels. For +example, one possible combination or single condition can be described +as mode is no vehicle, battery is non-rechargeable, terrain is +mountainous, time of day is night and the threat is high. Another +operational condition can be described as the terrain is flat, time of +day is daytime, and the threat is low. Cyber threats have the potential +to impact most systems. The cyber factors in table 2 are generally +sufficient for test designs; however, other cyber focused factors may be +appropriate depending on the COIs and/or subordinate operations.

      Table 2. COI 2, Survivor/Evader Navigation

      Operational Conditions
      FactorsLevels
      Mode of TravelVehicleNo vehicle
      Battery TypeRechargeableNon-rechargeable
      TerrainFlatMountainousLittoral
      Time of DayNightDayTransition
      ThreatHighLow
      Disruptive Cyber threatYesNo
      Non Disruptive Cyber threatYesNo

      Identify Factors and Levels.

      Factors and levels are identified through a number of methods. If +studies (such as an AoA) have been conducted, they could provide insight +on potential factors. If requirements have been mapped on the EV, they +could provide specific factors of interest (e.g., for “the system shall +operate day and night” the factor would be time of day). The CT, +composed of the users, developers, operators, analysts, etc., brings a +great deal of knowledge and expertise to the task of brainstorming ideas +on factors.

      To identify factors, the team reviews each COI and asks the question, +“What factors potentially influence the outcome of the COI or operation +captured by the MOEs?” Some of these factors may be an explicit part of +the environment in which the system will be employed (e.g., altitude, +weather, network load.) Other factors may not seem as directly related +to the employment environment, such as manning level, technical orders, +skill level. Yet, others may appear as inherent system factors that will +likely be “as-is” when the system is employed. Examples of this include +memory size, number of display screens, and seat positions, we identify +these as a “Given” level within the design. While this list is not +exhaustive set of factors, it is important to document all of the +factors identified for future reference. For OT purposes, attempt to +focus on the sets that will have a potential effect on the outcome of +the operation and are likely to vary the operational environment or the +user/operator.

      After the core team documents the factors, appropriate levels will be +added to each factor. When identifying the levels, it is desirable to +capture the range of possible levels. The decision on exactly which +levels to test will be made later during test design. At this point, it +may be recognized that several of the factors, particularly the inherent +system factors, may be given for operational test. In the example, the +factors are software version and training. It is not necessary to +identify levels for those factors (although, the developer may wish to +do so). Table 3 expands on the navigation COI example discussed in table +3.

      The last two factors highlight the point of documenting all identified +factors. In the illustrated example, these particular factors were +previously recognized as going to be “given” or “as-is” when the system +is delivered. Therefore, they are not prioritized since there is no +possibility for them to change. The software version factor is important +to document since it is part of the operation and is measured and +reported. The last two factors (software version/training) is at a set +value for the OT&E.

      Table 3. COI 2, Survivor/Evader Navigation

      Operational Conditions
      FactorsLevels
      Mode of TravelVehicleNo vehicle
      Battery TypeRechargeableNon-rechargeable
      TerrainFlatMountainousLittoral
      Time of DayNightDayTransition
      ThreatHighLow
      Disruptive Cyber threatYesNo
      Non-Disruptive Cyber threatYesNo
      Software VersionGiven
      TrainingGiven

      Prioritizing Factors

      The table of factors may include factors in the operational environment +which may not influence the SUT, but are used to describe an operational +environment. As a result, a prioritization process is used to rank +factors based on their impact against each COI’s operations by +considering their effect on the MOEs. This is a subjective determination +made by the Core Team and is intended to identify those operational +conditions that have the most impact to mission success and are +therefore more important from a test design perspective. This is a +two-step process for each factor and is accomplished during the +Battlespace Development meeting, using operator/SME input. The +prioritization process begins with determining the likelihood or +frequency of encountering each level of each factor in the operational +environments and continues by determining the estimated magnitude of +impact varying the levels of a factor has on the MOE.

      The first step determines the likelihood of encountering the particular +levels for each factor. This is based on the potential to encounter a +particular factor/level in the operational environment (e.g., the +probability of recovery from mountains is high, but the probability of +recovery from Flat is low). This may be done with specific probabilities +or percentages or with qualitative statements (e.g., likely, frequently, +seldom). The combinations of the factors, levels, and the likelihood of +encountering each level describes the possible battlespace conditions +the system under test could operate within when conducting the +activities depicted by the COI or Operation.

      The second step estimates the magnitude of impact and assigns a “high,” +“medium,” “low,” or “none” rating for each MOE for each factor. The +impact is assigned after considering the potential size of the change in +the MOE when the factor is varied between its levels, leading to a +significant change in the outcome of the operation with consideration of +the MOE. Table 4 shows the prioritized factors highlighted in grey.

      Table 4. Factor Prioritization

      COI 1: Can CSARL enable survivor/evader navigation to a rendezvous location?
      Operation 1: Rescue Survivor

      MOE 1: Timeliness of Rescue;

      MOE 2 Accuracy of Pick-up Point

      FactorLevelsPrioritizationFactor MgmtWhy factor is operationally important; Why level is selectedNotes
      Likelihood of EncounteringMagnitude of Impact
      MOE 1MOE 2
      Mode of Travel

      Vehicle

      No Vehicle

      Frequent

      Seldom

      HHAffects the survivor’s ability to move from the area.
      Battery Type

      Rechargeable

      Non Rechargeable

      Frequent

      Seldom

      HHAbility of the survivor/evader to have communications.
      Terrain

      Flat

      Mountainous

      Littoral

      BalancedHHDifference in the terrain could affect the survivors’ ability to move or platform recovery.
      Time of Day

      Day

      Night

      Transition

      BalancedMMNight time could affect the ability to see the survivor/evader.The CT should document notes for each F&L set.
      Threat

      High

      Low

      BalancedHHThis would affect the platforms ability to reach location.
      Disruptive Cyber Threat

      Yes

      No

      CommonHHWill have to look at mission planer vulnerabilities.
      Non Disruptive Cyber Threat

      Yes

      No

      CommonMMLook at possible mission effects.
      Software VersionGivenGivens not prioritizedComplete instructions on how to plan and operate system, also affects maintenance.Latest version.
      TrainingGivenGivens not prioritizedPlatform dependent, survival or equipment related capabilities.Both survivor and recovery team have training.

      The last two factors highlight the point of documenting all identified +factors. In this example, these particular factors are seen as “given” +upon system delivery. Therefore, they are not prioritized because there +is no possibility they will change. The technical data factor is +important to document because it is part of the operation and will be +measured and reported. The last factor will be at a set value for the +OT&E. The team has determined this factor is unlikely to have an impact; +nonetheless, it is documented as part of the set of factors. The last +two factors and the factor “threat” are not removed from the list—they +are still needed to ensure the test environment is operationally +representative. Consideration should be given to them for resource +planning and test execution.

      Operational Capabilities (OC)

      An OC is a system attribute or grouping of attributes users or SMEs +identified as having value or that are crucial to the system to satisfy +the capability gap within the context of the operations defined by the +COIs. They provide operational context for attributes of high interest +or importance within the operation. OCs are identified by reviewing the +system’s requirements documents and by SMEs identifying system +capability attributes that can significantly influence achieving the +COIs.

      Cybersecurity and cyber resiliency are high-interest attributes and +are assessed/evaluated as applicable across all operations.

      The OCs are not part of the rating structure or evaluation at the end of +test, but serve instead to highlight possible trends/patterns of +operational impact along a particular capability. For instance, if in +the final evaluation, multiple measures fail across the OC +“Interoperability”, then this potential capability impact is highlighted +to leadership and decision makers. OCs are captured as a short phrase or +topic. Although the identification of OCs is a facilitated effort by the +A3 TDM, table 5 shows which areas to examine when developing OCs.

      Table 5. Operational Capability Areas

      OCArea to Examine
      Operational PerformanceWhat are the measures of desired effects (e.g., timeliness)?
      What operational performance attributes are listed (e.g., precision, responsiveness)?
      What operational performance attributes are associated with the key performance parameters (KPP) and key system attributes (KSA) (e.g., accuracy)?
      What attributes are high risk (e.g., lethality; cybersecurity, dependent on new technology)?
      System SupportWhat support attributes are listed (e.g., reliability, maintainability, availability, compatibility)?
      What are the support‑related attributes associated with the KPPs and KSAs (e.g., cybersecurity)?
      What attributes are high risk (e.g., reliability; dependent on new manufacturing techniques)?

      On the ESC, OCs allow some logical grouping of the operational +capabilities or capability requirements (e.g., from an ICD or CDD). The +relationship between operations (defined by the COIs), operational +capabilities and capability requirements are clearly depicted.

      Evaluation Summary Chart

      The team presents the program’s OT&E Construct in an Evaluation Summary +Chart (ESC). The chart will vary slightly depending on the COI approach +(see tables 6-8). The ESC identifies the various elements of an +operational test and the relationship of the individual elements to each +other. The initial elements of the OT&E Construct are the Mission +Statement (optional), COIs, Mission Effects (as MOEs), OCs, and +Operational Requirements; these form the first version of the ESC +labeled an ESC-1. The ESC-1 is intended to be a concise presentation +tool for summarizing the focus and scope of the test and relationship of +COIs and operational capabilities. The TD presents the ESC as part of an +Initial Test Design (ITD) Briefing.

      Table 6. Evaluation Summary Chart-1 (Integrated COI Approach)

      Mission Statement: The CSARL supports the combat search and rescue mission.

      Critical Operational Issues

      COI 1: Can CSARL enable rescue team navigation to a survivor/evader’s location?COI 2: Can CSARL enable survivor/ evader navigation to a rendezvous location?COI 3: Does CSARL support worldwide search and rescue operations?

      Mission Effects →

      Operational

      Capabilities ↓

      MOE 1.1, 1.2MOE 2.1, 2.2, 2.3MOE 3.1, 3.2, 3.3
      Accuracy4.3, 7.4
      Situational Awareness4.1, 4.24.1, 4.2, 4.9
      Timeliness4.4, 4.54.4, 4.5, 4.6
      Mission Planning4.9–4.124.10–4.13
      Cyber Resiliency/ Survivability*4.21*4.21*4.21
      Interoperability4.294.30–4.324.33–4.35
      Reliability4.254.254.26–4.28
      Compatibility4.22, 4.244.22, 4.23
      Availability4.39
      Maintainability4.40–4.43
      Ground Equipment4.44
      *KPP or supports KPPEffectiveness CentricSuitability Centric

      Table 7. Evaluation Summary Chart-1 (Hybrid COI Approach)

      Mission Statement: The CSARL supports the combat search and rescue mission.
      Critical Operational Issues →COI 1: Can CSARL enable rescue team navigation to a survivor/evader’s location?COI 2: Can CSARL enable survivor/ evader navigation to a rendezvous location?COI 3: Does CSARL support worldwide search and rescue operations?COI 4: Does CSARL Cyber Ops enable support Mission Assurance?

      Mission Effects →

      Operational

      Capabilities ↓

      MOE 1.1, 1.2MOE 2.1, 2.2, 2.3MOE 3.1, 3.2, 3.3MOE 4.1, 4.2, 4.3
      Accuracy4.3, 7.4
      ...
      Cyber Resiliency/ Survivability*4.21*4.21*4.21*4.21
      ....
      *KPP or supports KPPEffectiveness CentricSuitability Centric

      Table 8. Evaluation Summary Chart-1 (Stand-Alone COI Approach)

      Mission Statement: The CSARL supports the combat search and rescue mission.
      Critical Operational Issues →COI 1: Can CSARL enable rescue team navigation to a survivor/evader’s location?COI 2: Can CSARL enable survivor/ evader navigation to a rendezvous location?COI 3: Does CSARL support worldwide search and rescue operations?COI 4: Can CSARL operate in a cyber contested environment?

      Mission Effects →

      Operational

      Capabilities ↓

      MOE 1.1, 1.2MOE 2.1, 2.2, 2.3MOE 3.1, 3.2, 3.3MOE 4.1, 4.2, 4.3
      Accuracy4.3, 7.4

      4.1-4.13, 7.4.

      Note: Will require later development of COI 1, COI 2, and COI 3 composite MOP/MOS

      Situational Awareness4.1, 4.24.1, 4.2, 4.9
      Timeliness4.4, 4.54.4, 4.5, 4.6
      Mission Planning4.9–4.124.10–4.13
      Cyber Resiliency/ Survivability*4.21*4.21*4.21*4.21
      Interoperability4.294.30–4.324.33–4.35

      4.29-4.44

      Note: Will address in later COI 1, COI 2, and COI 3 composite MOP/MOS

      Reliability4.254.254.26–4.28
      ............
      *KPP or supports KPPEffectiveness CentricSuitability Centric

      Mission Statement in an Evaluation Summary Chart

      The mission statement (optional) is copied and pasted into the +Evaluation Summary Chart.

      Critical Operational Issues in an Evaluation Summary Chart

      COIs are copied and pasted into the Evaluation Summary Chart.

      Mission Effects in an Evaluation Summary Chart

      Mission effects, captured as MOEs for the COIs, are listed on the +Evaluation Summary Chart

      Operational Capability Requirements in an Evaluation Summary Chart

      Operational capability requirements paragraph references from the ICD/IS +ICD/CDD/IS CDD are copied into the first version of the Evaluation +Summary Chart (ESC-1) based on their relationship to the COIs on the +EV-2. This provides a clear understanding of how the COIs and +operational capability requirements relate to the operational and +support‑related performance attributes of the system and provide the +capability required by the warfighter. They are intended as high‑level +placeholders for operational test measures (MOEs/MOPs/MOSs) to be +developed later during the measures workshop and refined during test +concept development.

      Note: Operations and conditions (factors and levels) are not depicted +on an Evaluation Summary Chart. However, they are part of the overall +OT&E Construct and are typically provided in the test design and test +concept briefings.

      Test Design

      Test design is the second step in a test activity (see figure 8). For +the OT&E Construct test activity, the focus is on the test design for +evaluating achievement of the mission effects. The test design addresses +the following areas.

      Test Design Goals

      The SUT, the level of test and the kind of answer required, determine +the test design goals for each COI/operation and each may have multiple +goals and therefore designs. In general, AFOTEC uses three types of test +design goals: characterize, compare, and problem identification.

      Types of Test Design

      Choosing the most appropriate test design(s) requires expertise on the +system and the operational application it supports. An AFOTEC test +program will likely have combinations of the designs presented here. +Each COI or operation has its own test design and may have more than one +design. The result of a test design is a set of design points and the +rationale for choosing them. The following are typical types of design.

      • Demonstrations.  Demonstration test designs are used to

        demonstrate whether something is possible or not.

      • Space‑Filling Designs.  Space‑filling designs use a variety of

        techniques and criteria to select design points to provide +coverage across the possible set of conditions.

      • Combinatorial Designs. A combinatorial design employs the

        science of systematically selecting combinations of factors and +levels to provide the best chance of identifying problems. This is +most often used in testing software intensive systems.

      • Case Designs.  Case designs are used to demonstrate the

        capabilities of a system and operation under a specified set of +conditions. Several cases may be created using multiple methods.

      • Worst Case/Best Case Design.  One method may be “worst case,”

        where the conditions chosen are those perceived to be the most +stressing.

      • Special Cases Design.  Some special cases may be of particular

        interest to someone (e.g., the user, OSD, Congress). The +underlying reason for the special case should be documented, +because experience has shown the underlying goal is to prove it +either works or it does not work under some specific condition of +interest.

      • Operational Profiles Case Design.  Select cases based on the

        expected frequency of encountering the particular conditions +during planned operations (e.g., from the CONOPS). The rationale +(besides operationally realistic) is that this would be the +fastest way to reveal the most operationally‑relevant problems.

      **
      +**

      Figure 8. Test Design Within the OT&E Construct

      + + + image10 + +

      Factor Management.

      Within the test design, for each operation, operational factors are +managed at specified levels. How they are managed will depend on the +test design goal, the likelihood of encountering levels, and the +magnitude of operational impacts when a levels are changed. Table 9 +illustrates the factor management logic.

      • Vary factor. If a factor management is “Vary,” that factor’s

        levels will be changed in accordance with the test design by the +test team.

      • Fixed factor. “Fixed” factors will be set and will not change

        throughout the test.

      • Log (Record) Factor. Those factors labeled “Log” are not

        actively managed, but the setting of that factor will be recorded +during the execution of test events for possible use during +post-test data analysis.

      Table 9. Factor Management Logic

      + + + image11 + +

      Table 10 reflects the typical factor management resulting from the +factor prioritization discussed earlier in the guide.

      **
      +**

      Table 10. Factor Management

      COI 1: Can CSARL enable survivor/evader navigation to a rendezvous location?
      Operation 1: Rescue Survivor
      MOE 1: Timeliness of Rescue; MOE 2 Accuracy of Pick-up Point
      FactorLevelsPrioritizationFactor MgmtWhy factor is operationally important; Why level is selectedNotes
      Likelihood of EncounteringMagnitude of Impact
      MOE 1MOE 2
      Mode of Travel

      Vehicle

      No Vehicle

      Frequent

      Seldom

      HHVary VaryAffects the survivor’s ability to move from the area.
      Battery Type

      Rechargeable

      Non Rechargeable

      Frequent

      Seldom

      HHVary VaryAbility of the survivor/evader to have communications.
      Terrain

      Flat

      Mountainous

      Littoral

      BalancedHH

      Vary Vary

      Demo

      Difference in the terrain could affect the survivors’ ability to move or platform recovery.
      Time of Day

      Day

      Night

      Transition

      BalancedMMVary Vary DemoNight time could affect the ability to see the survivor/evader.The CT should document notes for each F&L set.
      Threat

      High

      Low

      BalancedHHVary VaryThis would affect the platforms ability to reach location.
      Disruptive Cyber Threat

      Yes

      No

      CommonHH

      Fix

      Demo

      Will have to look at mission planer vulnerabilities.Fix at Yes.
      Non Disruptive Cyber Threat

      Yes

      No

      CommonMM

      Fix

      Demo

      Look at possible mission effects.Fix at Yes.
      Software VersionGivenGivens not prioritizedLogComplete instructions on how to plan and operate system, also affects maintenance.Latest version.
      TrainingGivenGivens not prioritizedLogPlatform dependent, survival or equipment related capabilities.Both survivor and recovery team have training.

      Unconstrained and Constrained events

      In prioritizing the factors and determining factor management, the +entire set of possible test conditions has been filtered into a smaller, +more manageable and executable set of test conditions. The process +continues by introducing constraints and picking an appropriate test +design or set of test designs. Test design requires a discussion on +factor constraints. The core team will examine all of the possible +combinations of factor levels and specify which are infeasible due to +operational or physical constraints.

      Statistical Measures of Merit

      All test designs have associated measures of merit, or quality +indicators, and most are grounded in scientific statistical +methodologies. The measures of merit should be considered when deciding +on a test design. Regardless of chosen design type, there is a related +measure of merit which should be a consideration addressed in the test +plan documentation. The AFOTEC Test Design Guide has more information on +statistical measures of merit and their applicability to different +design types.

      Test Events

      Any single design results in a set of test events. A single test event +is defined as a single execution of a test to collect data with the +operational factors set at a single, given level (i.e., a single +condition or design point). Table 11 continues the survivor/evader +navigation example introduced earlier. In this example, the team has +decided the type of answer they wanted to provide was to characterize +the system’s behavior. Consequently, a characterize design matches well +with the desired type of answer. Other factors are fixed.

      Table 11. Example COI Test Events to Recover Isolated Personnel

      Test EventMode of TravelBattery TypeTerrainTime of DayThreat
      Characterize
      1No VehicleRechargeableMountainTransitionLow
      2VehicleNon-rechargeableFlatNightLow
      3No VehicleNon-rechargeableLittoralNightHigh
      4No VehicleNon-rechargeableMountainDayHigh
      5VehicleRechargeableLittoralDayHigh
      6No VehicleNon-rechargeableFlatTransitionHigh
      7VehicleRechargeableMountainNightHigh
      8VehicleNon-rechargeableLittoralTransitionLow
      9No VehicleRechargeableMountainTransitionLow
      10VehicleNon-rechargeableFlatNightLow
      11No VehicleNon-rechargeableLittoralNightHigh
      12No VehicleNon-rechargeableMountainDayHigh
      Problem ID
      13VehicleRechargeableLittoralDayHigh
      14No VehicleNon-rechargeableFlatTransitionHigh
      15VehicleRechargeableNightHigh

      If multiple test designs are created, such as a characterize design +supplemented with a case design, the total number of test events +increases. Similarly, the total number of test events increases in +accordance with test events that are replicated.

      Test Design Validations

      Testing evolves continuously and it is expected that test designs will +change. Most of the design evolution is managed by the test teams during +the normal testing ops. However, a test design validation is a more +formal effort that generally occurs at the request of a Detachment TD +and is usually employed when the test design is significantly outdated, +when there have been major changes in the scope of an acquisition, or +when earlier test design documentation is not sufficient/available. The +scope of a design validation depends on the test team needs. It could +require all of the step leading to a test design or only specific pieces +of the test design to be readdressed. When making a design validation +scope determination, keep in mind that most of the steps build on one +another. Formal test design validations should be requested by the +Detachment through the A‑3 PM.

      Measures Development

      This section discusses the process for refining MOEs, developing +measures of performance (MOP), and measures of suitability (MOS), and +identifying the associated data elements. MOEs are identified during the +earlier battlespace development effort and refined during a measures +workshop (MW). See the AFOTEC Measures Guide for additional details. In +AFOTEC, measures are developed using a top-down and bottom-up approach. +The top down approach is most useful for MOE development and the +bottom-up approach is effective when developing MOPs and MOSs. Figure 9 +illustrates where measures fit in the OT&E construct.

      Figure 9. Measure development in the OT&E Construct

      + + + image12 + +

      Measures of performance and suitability (MOP/MOS) are initially +developed in a MW facilitated by A‑2/9 with A‑3 and Detachment +participation. The optimal time for a MW after the initial OT&E +Construct is approved and a draft CDD/IS CDD, or an equivalent document, +(e.g., AF Form 1067, A‑spec) is available as the source document for +capability requirements. Measures development can also be triggered by +immediate need.

      Measures are expected for RFP and MS B/C TEMPs, test concept +briefings, and all AFOTEC assessment and test plans. For RFP TEMPs +that are too early for a Measures Workshop, an initial measure set +will be developed by A-2/9 (working with the detachment and the Test +Team as input to the RFP TEMP.

      Measures of effectiveness (MOE) are the measures related to the +capability to accomplish an operation. MOEs directly determine the +degree of the desired effect achieved for a COI.

      Measures may also be associated with the operational capabilities that +contribute to a COI being satisfied. Measures of Performance (MOP) are +the measures related to the system’s capabilities, features, functions, +and properties enabling the effects to be achieved. Measures of +suitability (MOS) are the measures related to the degree to which a +system can be placed satisfactorily into field use. Additional +information on MOPs and MOSs can be found in AFI 63‑101/20‑101_AFGM +2016-01, Life Cycle Management, 9 May 17; AFI 99‑103, Capabilities +Based Test and Evaluation, 6 Apr 17; and AFOTECPAM 99‑104, AFOTEC +Operational Suitability Test and Evaluation Guide, 24 Sep 13, etc.). +Test teams should consult the AFOTEC Measures Guide, their Detachment +TA, and A‑2/9 for current best practices on the development of measures. +Proposed exceptions to these best practices should be discussed with +A‑2/9 before developing measures. Generally, the desired outcome of a MW +is a complete set of measures for the test activity with defined scopes +for each measure.

      The MW are meetings facilitated by A-2/9 and A-3. Major stakeholders in +the acquisition program are invited: the user community, the program +office (PO), DOT&E, system developers, and developmental testers. All +participants apply their subject matter expertise toward the goal of +developing a measure set and test designs. Generally, the Detachment, +A‑2/9 and A‑3 do “homework” prior to the workshop. A‑2/9, with inputs +from the Detachment TD or technical advisor, develops draft measures in +preparation for the MW meeting. The purpose of MW preparation before +holding the MW meeting is to save time and level of effort.

      Test Execution Planning

      The AFOTEC core team members will usually meet informally to continue +building upon the information compiled during the Battlespace +Development, initial test design, and measures development. This is +referred to as execution planning (see figure 10). The purpose of these +follow-on meetings is to finalize the test construct such as refining +test design worksheets, identifying test methodologies, creating test +scenarios, and identifying resources.

      Figure 10. Test execution Planning in the OT&E Construct

      + + + image13 + +

      Test Methodology

      Test events may be executed through a variety of methods. Replicating a +realistic mission or mission segment should be used whenever feasible. +Replicating a realistic mission does not have to focus on the engagement +or battle outcome level (full engagement level of testing can be cost +prohibitive), but should provide the means to evaluate the operational +effectiveness and suitability of the system or subsystem in +operationally realistic conditions. Additionally, it should provide a +means to determine overall mission capability. Testers create controlled +test scenarios to reflect the conditions that best evaluate the system. +Field testing is a good, initial choice for operational testing as it +provides the most operationally realistic environment. However, field +testing is not always feasible to capture all test events. M&S provides +another venue for executing test events (USC, Title 10 imposes +constraints on the use of M&S during operational testing) and may +include distributed test applications using live, virtual and +constructive (LVC) simulation assets. M&S requirements should be +determined early in order to become part of the system development +contract. Other test methods include studies and analysis, exercises and +training opportunities. The test methodologies may be a combination of +these methods during DT, IT&E and OT. For example, early in a program, +you might use M&S to help identify important operational factors to +include in an Early Operational Assessment (EOA) or Operational +Assessment (OA). Execution of test events during the EOA/OA is followed +by some analysis highlighting that some factors may not be important +(and possibly identify new factors). The revised set of operational +factors is then used in the OT&E.

      If test capability requirements (to include modeling and simulation) are +identified during OT&E Construct development, accreditation activities +are required. Identification of test capability requirements will result +in the development of an accreditation memo. The memo identifies the +test capability requirements, accreditation documentation requirements +and format, timelines, the accreditation authority and other pertinent +information. The memo is increasingly important because it initiates +development of the accreditation plans and begins tracking VV&A resource +expenditures including manpower and dollars.

      Test Scenarios

      Test scenarios capture the end‑to‑end flow and reintroduce the factors +identified during the battlespace development and test design. During +those earlier steps the operational factors were used to identify +condition based test events. These events must be translated into +representative operational test scenarios (figure 11). Test events +should be executed in in the most representative scenarios possible. +This allows the best evaluation of a system by replicating a realistic +mission or mission segment. Test scenarios should allow all key factors +identified in the condition-based test event to be exercised.

      Figure 11. Test Events and Scenario Linkage

      + + + image14 + +

      Test scenarios may include test events supporting multiple measures or +COIs. Thus, one scenario may satisfy the completion of multiple test +events simultaneously (Figure X). Evaluating a system by replicating a +realistic mission or mission segment should be used whenever feasible. +Mission replication should provide the means to evaluate the operational +effectiveness and suitability of the system or subsystem in +operationally realistic conditions. Realistic threats, including cyber +threats, should be drawn from the latest intelligence sources for the +employing commands. Core teams create controlled test scenarios that +reflect the operationally realistic conditions to best evaluate the +system. Defense business systems testing will include theft/fraud test +scenarios.

      The intent is to identify test scenarios that allow for an end‑to‑end +flow from one COI to the next, as well as for concurrent COIs. Within +the test scenarios, factors are set to the appropriate levels called for +by each test design. It is important to realize that the levels may be +different or vary from scenario to scenario. For example, an F‑16 +conducting a CSAR scenario is unlikely to fly at high altitudes; thus, +the level for altitude is set to low and another scenario (such as a +strike scenario) is used to capture altitude at its high level. Another +approach would be to select a set of test scenarios that allow all the +test events (described by the factors and levels) to be executed within +the scenarios. Selecting test scenarios appropriately allows for +efficient use of test resources, as well as presenting an operationally +realistic test environment. Proper scenario selection also helps avoid +testing in independent segments (e.g., COIs) when there are actually +interactions between these segments. However, not all test events are +likely to be executable as part of one overall scenario or set of +scenarios. Expect some test events to require separate, specific +portions of a scenario to establish the necessary operational +conditions. A consequence of identifying end‑to‑end flow and interaction +between COIs is that test events are overlapping and occurring +simultaneously. For example, the same F‑16 sortie that captures two +targeting test events (one in mountainous terrain, the other in flat +terrain) also captures a mission‑planning test event and a weapons +load‑time test event. These events all take place within the context of +a CSAR scenario where the particular operational factors are set to +levels consistent with a CSAR scenario. Figure 12 reflects this concept +of end-to-end threads across COIs

      Figure 12. End-to-end threads across COIs

      + + + image15 + +

      Test scenarios also allow the re‑introduction of the operational factors +that were set aside earlier. These are the operational factors likely to +exist in the operational environment, but at a given level or minimally +related to the system. These are included in the test scenarios to +ensure operationally realistic conditions.

      Test Capability Needs and Shortfalls

      Execution of operationally relevant OT&E will normally require test +capabilities. This section only discusses test capabilities and +accreditation to the extent needed for an initial test design. For more +details see the AFOTEC Test Capabilities Guide and the AFOTEC +Accreditation Guide. AFOTEC does not own or operate test ranges, +facilities, or assets and must identify test capability resource +requirements as early as possible to ensure they are available, and +technically and operationally sufficient, for OT&E purposes. The +battlespace development and test design processes defined the test scope +and methodologies and is the foundation for identifying test capability +requirements. Table 10 shows typical test capability requirements.

      Table 10. Typical Test Capabilities

      • Test articles

      • Test sites

      • Test instrumentation

      • Test support equipment

      • Threat representation

      • Test targets and expendables

      • Operational force test support

      • Models, simulations, and test beds

      • Joint operational test environment

      • Special requirements

      Requirements that cannot be met by existing test infrastructure and +capabilities must be identified to A-5R. Gaps/shortfalls associated with +NTTR should be addressed through A-8Z. Test capability requirements are +addressed in the AFOTEC Test Resource Plan (TRP) and the AFOTEC uses a +Time-Phased Investment Planning Document process to advocate for test +capability development. For test capabilities that may require foreign +threat capability, contact AFOTEC A-2N to request and advocate for +foreign assets through the AF foreign materiel program (FMP) process. +This process acquires and exploits foreign systems for testing, training +and intelligence purposes and may satisfy a threat test capability need.

      Time-Phased Investment Document

      The AFOTEC T-PhID (formerly Test Capability Roadmap) serves as the +cornerstone of AFOTEC’s test capability investment strategy. AFOTEC must +communicate OT requirements to AF and DoD investment forums. Test +capability development must be funded in appropriate investment +portfolios to ensure the needed capabilities will be in place, verified, +and validated in time to support the test. A-5R continuously gathers OT +requirements (test capability gaps/shortfalls) through:

      • Individual program test capability readiness assessments (TCRAs)

      • SharePoint interface used for spontaneous/asynchronous +identification of requirements by test teams

      • An annual requirements call closely aligned with the AFOTEC RRB

      Test capability requirements priorities are approved by AFOTEC CC +annually, in time to support AF and DoD investment planning processes. +Some of the test capability investment forums are listed below.

      • Test Investment Planning and Programming (TIPP)

      • Central Test and Evaluation Investment Program (CTEIP)

      • Resource Enhancement Program (REP)

      • Threat Systems Working Group (TSWG)

      • Joint Aircraft Survivability Program (JASP)

      A-5R coordinates communication of AFOTEC test capability requirements to +these investment forums, coordinates review of development proposals to +identify those that may satisfy AFOTEC needs, and monitors program +development ensuring fulfillment of AFOTEC needs including completion of +capability verification and validation. There are numerous range +capability requirements that must be addressed as early as possible.

      Determining Range Requirements

      In building a mission scenario and determining range requirements, the +tester needs to know, for example, the type of target, the number of +aircraft attacking a target and weapons employed. The tester also needs +to consider the range’s ability to accommodate the operational test +without environmental impact. The system CONOPS should contain +information such as specific tactics and techniques to be employed +against certain targets and threat systems. Ensure that range personnel +have a full understanding of the specific OT objectives. The core team +should consult with A‑8Z (OL‑NN post-tasking order) for testing +considerations at NTTR and A‑5R for any other test range or facilities.

      Range Requirement Identification

      Carefully thought‑out mission scenarios provide the test team with +preliminary test range resource requirements (e.g., threat simulators +and instrumentation packages). Early identification of these +requirements is extremely important for advanced range scheduling, test +resource plan (TRP) development, and incorporation of new range +requirements into the various range improvement programs and other +investment forums (need at least 1 year lead time). In support of the +core team, A‑5R (A‑8Z for NTTR) provides information on current and +legacy DoD T&E databases that archive data on existing T&E test assets +and is the Air Force’s focal point for integrating new T&E range +requirements into the range improvements program. All potential test +sites should be considered before the final selection is made.

      Range Selection Considerations

      The Test Team may have to give special consideration to test range +selection and use. Usually, flight test programs require scheduling of +and coordinating with test ranges for some or all test sorties. Test +teams need to ensure range availability at the time of their scheduled +test. All major ranges and centers are subject to the DoD uniform +funding policy and require formal documentation of the test and the +support needed. The range, in turn, provides a statement of their +capability to support the test. The range process can take 6 months or +more. Although documentation requirements vary among the ranges and +centers, most require the development of a Program Introduction Document +(PID). When selecting a range, ensure the availability of applicable +range data is considered. To determine specific range initiation +requirements, consult the Universal Documentation System Handbook +501‑08, available from Secretariat, Range Commanders Council, +TEDT‑WS‑RCC, White Sands Missile Range, New Mexico 88002‑5110.

      National Cyber Range Considerations

      The National Cyber Range (NCR) provides test teams with a capability to +accomplish system training and perform disruptive and non-disruptive +cyber-attacks on a complete or sub-component of a system under test at +multiple classification levels. The NCR’s system reset capabilities make +it possible for cyber attackers to completely disable or even +catastrophically damage a system without the risk of negatively +impacting operational users or causing unrecoverable damage to the test +environment. This environment also provides a means for cyber offensive +and defensive training as well as basic user training before or during +test execution (to include cybersecurity assessments). As the NCR is a +contained range, connections with outside systems may need to be +emulated. Having said that, events can occur exclusively at NCR, or in +conjunction with other Joint Mission Environment Test Capability or +Joint Information Operations Range nodes. However, programs using unique +systems (i.e., components that won’t be used by any other programs in +the future) may incur a cost of purchasing the necessary hardware and/or +software. Test Directors interested in learning more about the NCR or +seeing if the NCR can support their program can contact the NCR directly +at osd.pentagon.ousd-atl.mbx.trmc-ncr@mail.mil.

      Test Targets

      Test targets, when applicable, should be realistic; they should be +operationally representative and challenging. The TD should coordinate +with the applicable MAJCOM to develop the target list. Through A‑2N, +coordinate with the appropriate intelligence agency on the design of +selected targets, existing and newly developed. A‑5R maintains current +lists of available aerial test targets in the inventory and is the POC +for obtaining target allocations. A‑5R also maintains contacts for other +target types such as surface targets. Funding for target‑related +expenditures must be included in the TRP.

      Range Safety Considerations

      Ranges and test centers are sensitive to safety considerations and may +require special test procedures, hardware, or software to reduce the +risk of a mishap during the test. Ranges and test centers frequently +require safety review boards before start of testing. The TD should +allow sufficient time to support these safety reviews. SE can assist in +resolving range safety issues or support in safety reviews. When +identifying required test resources and range requirements, test teams +should ensure weather warnings and advisories are considered in support +requirements (contact A‑2/9 for assistance).

      Range Instrumentation Considerations

      Instrumentation varies widely among ranges. Therefore, the test team +should carefully select a range to ensure instrumentation is available +to provide the required information and to allow the most realistic +representation of the operational environment.

      Range Data Processing Considerations

      Data processing capabilities and times are considered when the test +schedule is prepared. The range equipment user’s guide, facilities +handbook, or the test support contact may be consulted for typical +processing times. TDs must also consider the method by which test data +is transmitted for analysis (SIPRNET, courier, etc.).

      Test Article Instrumentation

      Identify the test article instrumentation requirements early to ensure +that instrumentation is sufficient to support test events. There is a +fine balance between not compromising the production‑representative test +article and obtaining telemetry from an instrumentation package. Test +article instrumentation should be compatible with the range or test +facility telemetry and data collection systems, with sufficient accuracy +and sample rates to enable verification of system performance. If the +test article needs to transmit instrumentation data, the instrumentation +package needs to be compatible with the MIL‑STD‑1553 multiplex data bus.

      Program Introduction Document Release Authority

      PIDs are executing direction approved in TRPs for obtaining test range +support. Det/CCs are authorized to release PIDs to range agencies. +Copies of all PIDs are sent to the AFOTEC/CC, A‑3 and A‑5/8 when +released to range support agencies by the Det/CC. Issues identified +during subsequent PID coordination with the supporting range are +highlighted during the Detachment Commander Monthly Program Update.

      The Use of Modeling and Simulation

      M&S includes, but is not limited to, digital M&S, hardware‑in‑the‑loop +(HITL) virtual simulations and test drivers such as data injectors and +stimulators. M&S also includes physical models of targets, threat +representations and combinations of simulations. Testers (DT&E, LFT&E, +OT&E) should collaborate early with the program manager’s (PM) M&S +proponent on planned uses of M&S for the purpose of identifying OT M&S +requirements, necessary verification and validation (V&V) activities, +and for securing program office M&S funding (as applicable) IAW +DODI 5000.02 and AFI 63‑101/20‑101, 9 May 17.

      AFOTEC uses digital M&S for two primary purposes: prediction of SUT +performance and extension of field test results. AFOTEC uses HITL +virtual simulations (and facilities) and test drivers to test system +performance under conditions that cannot be reproduced on an open‑air +range or on actual operational equipment. The OT&E Construct, test +concept and test plan should identify and explicitly describe the use of +M&S to include the use of distributed capabilities for executing +operational test events.

      M&S can play a helpful role in optimizing limited open‑air range (OAR) +or ground test facility test time. In addition, testers can examine +various configurations of the OAR and SUT. Resulting information +provides insight to maximize return from limited range time and to +investigate areas of principle interest to the warfighter.

      With an adequate representation of the SUT, the test team can use M&S +assets to predict SUT performance and optimize field test events by +estimating SUT performance boundaries. The optimization enables +tailoring of field testing to address those areas that merit further +evaluation or are of special interest to the user.

      M&S can fill in gaps associated with field testing in cases where it +would be too expensive or impossible due to lack of capability to +conduct an OAR‑only evaluation. The test team would first use M&S to +rehearse and construct valid OAR events and ensure a common baseline. +Then once the M&S is appropriately accredited, the test team can use it +to run events beyond the scope of OAR events.

      As an example, consider testing an air‑to‑air missile system, where +the primary target of interest is a foreign fighter. Since it would be +impractical or impossible to fire the SUT missile at an actual foreign +aircraft, OAR events may consist of firing the SUT missile at a USAF +fighter configured as a surrogate foreign aircraft. M&S would then +repeat the OAR drone aircraft firings and “extend” the results to the +foreign aircraft of interest by executing the M&S with a +representation of the foreign aircraft signature and other parameters +of interest, provided by an external organization (NASIC, MSIC, etc.). +AFOTEC could then provide the user information regarding SUT +performance versus real threats.

      Other reasons for using M&S are safety concerns, environmental concerns +(hazmat), treaty limitations, OPSEC concerns, or support concept +limitations.

      Whenever the test team intends to use M&S results to capture information +in an OT&E Final Report, they need to ensure proper M&S accreditation. +Test teams are encouraged to contact A‑2/9 early in the life of a +program, primarily after the OT&E Construct is completed, for assistance +in determining M&S applicability and VV&A requirements. A‑2/9 and A-5/8 +maintains information on various DoD and AF M&S and VV&A applications, +including OT&E‑specific M&S/VV&A guidance.

      Test Capability Accreditation

      AFOTEC often uses test capabilities to create a pseudo-employment or +combat environment in which to conduct the operational testing. These +test capabilities may include M&S of the employment environment as well +as M&S of the SUT. The AFOTEC Accreditation Guide provides actionable +information for Test Directors, analysts, engineers, and program +managers on how best to plan, execute, and report accreditation of M&S +systems. The accreditation process involves:

      • Developing an executable plan, assessment, and report with focus on

        documenting the results of the accreditation assessment

      • Documenting the recommendations in support of the accreditation

        decision, and

      • Documenting lessons learned during accreditation

      Accreditation is applicable when a test capability is used directly or +indirectly to provide information that appears in an OT&E Final Report. +If a TD intends to draw weapon system capability conclusions (i.e., rate +measures) based upon the use of a test capability, accreditation is +required. AFOTEC accreditation policy exists to ensure standardization +across test teams and a consistent level of rigor in determining +adequacy of test capabilities. Accreditation activities should not +excessively burden test teams or lead to inordinate expense. The AFOTEC +staff lead for Accreditation is A-2/9. Refer questions about +Verification, Validation, and Accreditation to +UDG_AFOTEC.A2A9_AFOTECA2A9@us.af.mil.

      Test capabilities used solely for test‑planning purposes and assessments +(such as observations, EOAs) do not require a formal accreditation, +although the analyst should exercise a similar process to ensure that +the test capability is adequate and to identify risks involved and how +they may affect the overall test. Any informal accreditation +investigation procedures (peer review, analyst investigations, etc.) +should be documented to ensure continuity when program personnel change.

      AFOTEC’s mission is to Deliver Combat Capability through Operational +Test. AFOTEC often uses test capabilities to create a pseudo-employment +or combat environment in which to conduct the operational testing. These +test capabilities may include M&S of the employment environment as well +as M&S of the SUT. The test capabilities used in a given test do not +always represent the employment environment with 100% accuracy. There +are usually some differences in fidelity between the actual combat +systems and test representations. Given these differences, AFOTEC is +careful in drawing conclusions about SUT capabilities and ensures that +the representation of the employment environment is adequate to draw +credible conclusions. Inherently, AFOTEC assumes some degree of risk +when using test capabilities to represent an employment environment or +SUT to determine SUT capabilities. The purpose of accreditation is to +characterize that risk and ensure the risk is acceptable.

      See the AFOTEC Accreditation Guide accreditation details.

      Test Constraints and Limitations

      Limitations may be identified at any point in a program, however the +earlier a potential limitation is identified, the more likely it can be +resolved without impacting OT&E credibility. The TD and core team +including A-5R and/or A‑8Z are encouraged to identify limitations as +early as possible. The documentation provides justification for +continued improvement and modernization of test capabilities that +ultimately lead to more useful and relevant T&E reports and better +systems delivered to the warfighter. A limitation is something that +would influence being able to accomplish a credible operational +evaluation.

      • Limitation: A limitation affects the ability to evaluate certain

        aspects of a weapon system or to re‑create certain aspects of the +operational environment. Limitations can be due to differences in +the scenario (operational versus test), test capabilities such as +threat simulation, range restrictions (safety, physical airspace), +specific test measurement constraints, numbers of test articles, +or the threat lay down (types and numbers). Limitations, once +identified, are carried throughout all phases of the test program +unless the underlying factors are no longer applicable. A system +that is not production representative for an OT&E may be +identified as a limitation.

      • Mitigation: Each limitation requires the team to plan a

        mitigation to reduce the risk to the evaluation of the system. +Mitigation is intended to reduce the impact of the limitation to +the point where the evaluation is still credible. There are +typically few, if any, limitations in conducting credible EOAs and +OAs. However, when there are limitations, mitigation may be +different for an EOA, OA, or IOT&E. M&S is one method used to +mitigate a limitation. Teams should actively pursue mitigation of +a limitation in order to have an adequate test.

      • Impact (of a limitation after mitigation): The impact should

        describe the extent to which the limitation will (for a plan) or +did (for a report) affect the quality, completeness and/or +confidence of our evaluation of the system under test’s +effectiveness, suitability and mission capability. The intent is +to acknowledge limitations and inform the decision‑maker and +warfighter of the extent to which the limitations will or did +affect our ability to report weapon system performance. The impact +should clearly state what characteristics or attributes of the +evaluation are affected.

      Table 12 provides some example limitations, mitigations, and impacts.

      Table 12. Examples of Limitations

      LimitationMitigationImpact
      Limited UAS System Availability

      Coordination with operational unit to share assets between the field training unit and IOT&E test

      Leverage combat missions

      Inability to fully evaluate all measures

      Cybersecurity not evaluated

      Limited Flight Hours for Reliability, Maintainability and Availability EvaluationUse reliability availability logistics operations modelReported values may not reflect actual values in operational use
      Limited capability of Red Team to test weapon system via data link while in flightCoordinated with AFTC to emulate mission parameters in anechoic chamber to allow Red Team cyber attacks

      Cyber-exploitation effects not fully evaluated

      Inability to fully evaluate all measures

      Lack of Threat Systems at Test FacilitiesNoneInability to report system effectiveness versus some threats
      No integration of Lynx Radar Capability in Mobile Ground Control StationNoneUnable to evaluate Lynx synthetic aperture radar

      Basis of Estimate for Test Resources

      Together, the set of test events, test methodologies and test scenarios +form the basis of estimate. They describe why you are testing, what you +are going to do and how you are going to do it. Underlying the basis of +estimate is a set of assumptions that are validated to the extent +possible and documented. For the OT&E Construct, particular focus is +placed on the high cost (which includes high level of effort) and +long‑lead items. Typical examples of such items are threats, +instrumentation and M&S efforts. Some of these items have been +identified throughout the preceding steps. In forming the basis of +estimate, these previously identified items are consolidated and test +designs are reviewed to identify new items. Collectively, there may be +overlap between the resources required for each COI. These should be +identified and a consolidated list of resources should be provided (with +traceability and rationale).

      Table 13 contains the basis of estimate contents.

      Table 13. Contents of Basis of Estimate

      Content AreaContent Expectations
      COIsThe COIs define the operations that need to be exercised during OT&E and provide insight into what resources may be required to collect data and analyze the results. Instrumentation, databases, data extraction tools and analysis tools are examples of resources that may be required.
      Test EventsFor the particular test design(s) underlying the test events, a review of the factors and levels provide insight into the resources to establish the conditions. Man‑made threats, particular climate (artic, desert, etc.) conditions and terrain are examples of factors and levels that might drive resources. Threats are often expensive or long‑lead to develop. Differing climates conditions and terrain could drive multiple deployments. The conditions required to execute the test events provide the rationale or basis for these resources.
      Test MethodologyHow a set of test events are executed also provides the rationale or basis for resources. Field‑testing may incur range costs, or possibly even the development of new range capabilities. M&S incurs both costs and potentially long‑lead development. Reviewing the test methodologies provides insight on what might be needed to execute the test events.
      Test ScenariosTest scenarios form the operationally realistic environment. Reviewing all the factors identified in the test design provides insight into the additional assets and test capabilities required to build the operationally realistic scenarios. Many of these factors, particularly the as‑is factors, need to be measured and resources identified in order to collect and analyze data when executing the test scenario.
      AssumptionsAlthough assumptions may not directly drive resources, they provide indicators of potential risks and disconnects with other organizations.

      Initial Resource Estimates

      The core team uses the OT&E Construct basis of estimate to refine +initial resource estimates documented in the initial TRP. The Detachment +TRM updates the TRP to support the ITD Brief. The TD and Det TRM review +each resource category of the TRP to determine which line items need +costing and which ones need to be paid for by AFOTEC. Table 14 contains +the OT&E support costs breakdown.

      Table14. Operational T&E Support Costs

      AFOTEC PaysAFOTEC Does Not Pay
      • Range costs

      • Equipment Rental

      • Printing and reproduction

      • Communications

      • Real property maintenance and construction

      • Contractor support for OT&E

      • Data reduction

      • Special supplies and equipment

      • Leases

      • Civilian pay for (temporary over hires)

      • Per diem and travel

      • Transportation of equipment required for test

      • Supplies and equipment

      • Dry run planning

      • Test preparation

      • COTS M&S supporting test planning and reporting (including accreditation)

      • Cybersecurity testing (cooperative vulnerability & penetration assessment/ adversarial assessment)

      • Acquisition/modification of the system

      • Aircraft flying hours (other than range support aircraft)

      • Acquisition costs for major test vehicles

      • Cost of procuring test item or direct test item support. Maintaining the test item is the funding responsibility of the owning command. Includes contractor services and supply items to maintain the test item and fuel for the test item.

      • Missiles, munitions and targets

      • Telemetry kits

      • Range infrastructure

      • Type 1 (contractor) training

      • Digital M&S that produces data for OT&E

      • M&S V&V

      Identifying Resources. To move from the basis of estimate to a +completed test resource plan (TRP) takes a significant amount of effort. +This is an iterative process, and teams will generally refine the +initially planned events/activities based on resource availability, +realism, cost, etc., which are focused on arriving at the best +cost-benefit solution.

      The actual costing of resources, developing agreements, and many other +detailed steps required to source and cost are not captured here. These +specifics depend on acquisition and test approaches (joint, OT lead, +resource types, participants, funding strategies, time-to-test start, +infrastructure developmental needs, etc.), and teams rely on the +Headquarters and Detachment resource managers to support each OT&E +Construct effort.

      Documenting the Operational Test and Evaluation Construct

      Documentation cannot be overstated. Too many programs efforts have been +lost and needed to be re-accomplished because they were not properly +documented or in some cases, not documented at all. Each of the process +steps above have a recommended documentation approach. Why documentation +important?

      • The only constant with acquisition programs and the people who work +them, is change. Personnel come and go, and programs evolve. When +new people start a program, questions about how and why the OT&E +looks the way it does.

      • Leadership often ask why OT&E is doing various activities

      • DOT&E often has questions about the OT&E approach

      • Integrating testing is best served by robust OT&E documentation

      • Provides the foundational products and narrative for TEMP and OT&E +plan inputs

      Following the test design development, the TDM provides the test design +products to the TD. Using these products, the TD then begins developing +the ITD Briefing with support from his core team for presentation to the +AFOTEC/CC on the date specified in the tasking order. This briefing will +be developed and coordinated electronically for 2‑letter approval. The +briefing is an internal‑only AFOTEC product (i.e. it is not presented to +DOT&E). The purpose of the ITD Briefing is to convey to the AFOTEC/CC, +with a high degree of confidence, the complete beginning‑to‑end scope of +OT activities, resources, and costs with rationale. The ITD Briefing +indicates the specific acquisition events that the planned OT activities +support. The Detachment TD presents the acquisition information in a +briefing to the AFOTEC/CC for approval. Tailor the level of detail in +each area within the briefing to fit the specific program circumstances. +If a particular subject area in the ITD Briefing template does not apply +to a program, do not include that subject area in the briefing. +Significant issues should be resolved with appropriate HQ directorates +before the formal ITD Briefing. The ITD Briefing must include all +supporting information by using embedded documents, as described in the +briefing template. Following completion of the briefing, the OT&E +Construct is updated as required by the Detachment TD to reflect the +decisions made. The detailed ITD Briefing template is found on the +AFOTEC SharePoint.

      The OT&E Construct supports early integration and promotes the +combining, where appropriate, of DT and OT events to satisfy both DT and +OT objectives. Remember that throughout IT&E planning and execution, the +individual DT and OT objectives should not be compromised. Early +integration of DT and OT planning provides the foundation for the MS A +(and beyond) Test and Evaluation Master Plan development and supports +identification T&E requirements needed for RFPs. The TEMP is an +opportunity to document integration with the DT community and reduce +dedicated OT events when they have been accomplished satisfactorily in +IT&E. These events are only removed from dedicated OT when OT +requirements have been met.

      \ No newline at end of file diff --git a/sites/oteguide/fn_guides/accreditation_guide/index.html b/sites/oteguide/fn_guides/accreditation_guide/index.html index 67d4ff20..a150e0e0 100644 --- a/sites/oteguide/fn_guides/accreditation_guide/index.html +++ b/sites/oteguide/fn_guides/accreditation_guide/index.html @@ -1,4 +1,4 @@ -Accreditation Guide

      Accreditation Guide

      08 December 2020

      Originating Office: AFOTEC A-2/9

      INTRODUCTION

      The AFOTEC Accreditation Guide provides actionable information for test +Accreditation Guide

      Accreditation Guide

      08 December 2020

      Originating Office: AFOTEC A-2/9

      INTRODUCTION

      The AFOTEC Accreditation Guide provides actionable information for test directors (TD), analysts, engineers, and program managers on how best to plan, execute, and report accreditation of modeling and simulation (M&S) systems. The accreditation process involves:

      \ No newline at end of file diff --git a/sites/oteguide/fn_guides/index.html b/sites/oteguide/fn_guides/index.html index 27f528cd..65d528e8 100644 --- a/sites/oteguide/fn_guides/index.html +++ b/sites/oteguide/fn_guides/index.html @@ -1,24 +1,17 @@ -Appendix A

      Functional Guides and Tools

      Following is a list of functional guides and tools detailing the "how" +Functional Guides

      Functional Guides

      Following is a list of functional guides and tools detailing the "how" of conducting operational testing. The list is not all-inclusive and is dynamic; Directorates and Detachments may have additional functional guides and tools. Use these functional guides and tools in conjunction -with this edition for comprehensive OT&E guidance.

      OT&E Construct Guide. Provides techniques for developing initial +with this edition for comprehensive OT&E guidance.

      Bolded items are here in the menu.
      Italicized items don't exist yet.
      Linked items are CUI and exist on our SharePoint site.


      OT&E Construct Guide. Provides techniques for developing initial portions of the OT&E Construct: mission statement, COIs, operations, -battlespace conditions, and MOEs.

      Measures -Guide. -Details types of measures, how to develop them, and the grammar to use -when writing measures.

      Analyst Test Design Guide. Focuses on particular techniques and methods for designing the test events based on goals of a test.

      Test Capabilities -Guide. -Outlines documenting and acquiring test capabilities, both immediate and -long-lead, to support testing.

      Accreditation Guide. Discusses processes that support accreditation, including the verification and validation required.

      Test Execution Guide. Details the real-time processes of executing -test events.

      Evaluation and Reporting Guide. Outlines methods for evaluating +battlespace conditions, and MOEs.

      Accreditation Guide. Discusses processes that support accreditation, including the verification and validation required.

      Analyst Test Design Guide. Focuses on particular techniques and methods for designing the test events based on goals of a test.

      Editing Guide. How to do Technical Editing. Applicable for any report, and writing in general.

      Evaluation and Reporting Guide. Outlines methods for evaluating parts of the OT&E Construct and various forms for how to communicate -(reporting) feedback and results of testing.

      Safety Risk Management Guide. Describes procedures for identifying and managing risks for test activities.

      Cyber Support Package -Guide. Discusses cyber participation and activities throughout the life of a program.

      Lessons Learned Guide. Provides the process for capturing and incorporating lessons learned into AFOTEC.

      Risk Assessment and Level of Test (RALOT) +(reporting) feedback and results of testing.

      Lessons Learned Guide. Provides the process for capturing and incorporating lessons learned into AFOTEC.

      Measures Guide. Details types of measures, how to develop them, and the grammar to use when writing measures.

      Safety Risk Management Guide. Describes procedures for identifying and managing risks for test activities.

      Strategy, Planning, and Programming Process (SP3) Guide. An overview of the process for both short and long term plans. The SP3 plans are constantly updated and revised.

      Test Capabilities Guide. Outlines documenting and acquiring test capabilities, both immediate and long-lead, to support testing.

      Test Execution Guide. Details the real-time processes of executing +test events.

      Cyber Support Package +Guide. Discusses cyber participation and activities throughout the life of a program.

      Risk Assessment and Level of Test (RALOT) Guide Details when and how to conduct a RALOT to guide the degree of expected -reporting.

      Strategy, Planning, and Programming Process (SP3) Guide. An overview of the process for both short and long term plans. The SP3 plans are constantly updated and revised.

      Tools Catalog. -A dynamic and evolving set of tools is available.

      \ No newline at end of file diff --git a/sites/oteguide/fn_guides/safety_risk_mgmt_guide/index.html b/sites/oteguide/fn_guides/safety_risk_mgmt_guide/index.html index eccc0c45..797f99fc 100644 --- a/sites/oteguide/fn_guides/safety_risk_mgmt_guide/index.html +++ b/sites/oteguide/fn_guides/safety_risk_mgmt_guide/index.html @@ -1,4 +1,4 @@ -Safety Risk Management Guide

      Safety Risk Management Guide

      Last Updated/Reviewed: 08 December 2020

      Originating Office: AFOTEC SE

      ENVIRONMENT, SAFETY AND OCCUPATIONAL HEALTH

      The three basic principles of environment, safety, and occupational +Safety Risk Management Guide

      Safety Risk Management Guide

      Last Updated/Reviewed: 08 December 2020

      Originating Office: AFOTEC SE

      ENVIRONMENT, SAFETY AND OCCUPATIONAL HEALTH

      The three basic principles of environment, safety, and occupational health (ESOH) are to sustain readiness, leverage resources, and be a good neighbor. The test director (TD) is responsible for providing a safe and healthy workplace during test execution, enhancing mission @@ -127,7 +127,7 @@ the risk and endorse the ESOHCB Memo will be forwarded as "info" to the next higher decision authority as level of risk dictates (i.e., Det/TD to Det/DO to Det/CC to AFOTEC/CC). Coordination and approval of the ESOHCB Memo will be -accomplished prior to OT&E activities.

      \ No newline at end of file diff --git a/sites/oteguide/glossary/index.html b/sites/oteguide/glossary/index.html index 3f36592e..b127808e 100644 --- a/sites/oteguide/glossary/index.html +++ b/sites/oteguide/glossary/index.html @@ -1,4 +1,4 @@ -Appendix B

      Glossary

      Acquisition Decision Memorandum. The milestone decision authority +Appendix B

      Glossary

      Acquisition Decision Memorandum. The milestone decision authority approves the ADM and the program office releases it. The ADM documents the decisions and exit criteria established for MS decision or in-process reviews. It specifies what is done during the next @@ -70,7 +70,7 @@ coordination.

      Measure of Effectiveness. accomplishment of mission objectives and achievement of desired results. They quantify the results to be obtained by a system and may be expressed as probabilities that the system will perform as required. -MOEs may be further decomposed into measures of performance and measures +MOEs may be further decomposed into measures of performance and measures of suitability. (Defense Acquisition Guidebook). A criterion used to assess changes in system behavior, capability, or operational environment tied to measuring attainment of an end state, achievement of @@ -147,7 +147,7 @@ checklist to assist with reviewing TEMPs, which is posted on Threat Assessment Products. Our test teams use validated threat products and threat models that the National Air and Space Intelligence Center (NASIC) and the Missiles and Space Intelligence Center produce -continuously as threats evolve.